user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf; events { worker_connections 1024; # 提高连接数上限 multi_accept on; # 允许多连接同时接受 } http { ## # 基本设置 ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; keepalive_requests 1000; # 增加连接复用次数 types_hash_max_size 2048; include /etc/nginx/mime.types; default_type application/octet-stream; ## # SSL 设置 ## ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; ## # 日志设置 ## set_real_ip_from 0.0.0.0/0; # 允许所有代理传递真实 IP real_ip_header X-Forwarded-For; real_ip_recursive on; log_format custom '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log custom; error_log /var/log/nginx/error.log; ## # Gzip 压缩设置 ## gzip on; gzip_disable "msie6"; gzip_vary on; gzip_proxied any; gzip_comp_level 6; gzip_buffers 16 8k; gzip_http_version 1.1; gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript video/mp2t application/vnd.ms-fontobject application/x-font-ttf font/opentype font/woff2 image/svg+xml image/x-icon; ## # 缓存路径配置 ## proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=cache_zone:10m max_size=500m inactive=24h use_temp_path=off; ## # 虚拟主机配置 ## include /etc/nginx/conf.d/*.conf; # include /etc/nginx/sites-enabled/*; # 定义变量以简化配置 map $server_port $host_name { 20000 cdn.163189.xyz; 20001 cdn3.163189.xyz; 20002 cdn12.jdshipin.com; 20003 cdn6.163189.xyz; 20004 v2hcdn.jdshipin.com; 20005 edge3.hkdvb.com; 20006 cdn5.163189.xyz; 20007 cdn2.163189.xyz; 20008 aktv.top; 30001 www.stream-link.org; 30002 sc2025.stream-link.org; 30003 live-edge-06.stream-link.org; } # 定义默认缓存配置 proxy_cache_valid 200 206 5s; proxy_cache_methods GET HEAD; proxy_ignore_headers Cache-Control Expires; expires 5s; # 服务器配置 server { listen 20000 default_server; listen [::]:20000 default_server; server_name $host_name; # 使用变量替换域名 # 启用 HTTP/2 listen 443 ssl http2; add_header X-Cache-Status $upstream_cache_status; add_header X-Cache-TTL $upstream_http_x_cache_ttl; proxy_set_header X-Real-IP $remote_addr; # 传递客户端真实 IP proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 支持多级代理 proxy_set_header Host $host_name; # 确保请求的 Host 匹配 Cloudflare 配置 proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # 指定 SSL 协议 proxy_ssl_ciphers HIGH:!aNULL:!MD5; # 设置加密套件 proxy_ssl_verify off; # 忽略上游服务器证书验证 proxy_ssl_server_name on; proxy_cache cache_zone; # 使用指定的缓存区域 proxy_cache_lock on; # 启用缓存锁 location / { proxy_pass https://$host_name; # 使用变量替换源站地址 } # 针对 .ts 和 .aac 文件的特殊缓存设置 location ~* \.(ts|aac)$ { proxy_pass https://$host_name; # 使用变量替换源站地址 proxy_cache_valid 200 206 60s; # 缓存 .ts 文件 60 秒 expires 60s; # 设置浏览器端缓存 60 秒 } # 针对 .m3u8 文件内容修改 location ~ \.m3u8$ { proxy_pass https://aktv.top; # 替换为相对路径 sub_filter 'https://aktv.top/AKTV/stream/' '/AKTV/stream/'; sub_filter_once off; sub_filter_types application/vnd.apple.mpegurl text/plain; # 解压 gzip 压缩内容(如源站启用了压缩) gzip off; proxy_set_header Accept-Encoding ""; } # 针对 .m3u 文件内容修改 location ~ \.m3u$ { proxy_pass https://www.stream-link.org; # 替换为相对路径 sub_filter 'https://sc2025.stream-link.org' 'http://$host:30002'; sub_filter_once off; # sub_filter_types application/vnd.apple.mpegurl text/plain; # 解压 gzip 压缩内容(如源站启用了压缩) gzip off; proxy_set_header Accept-Encoding ""; } # 针对包含 smt2.1.5.php 的 URL,设置缓存时间为 60 秒 location ~ smt2\.1\.5\.php { proxy_cache_valid 200 206 60s; # 缓存 60 秒 expires 60s; # 设置浏览器缓存 60 秒 proxy_pass https://cdn12.jdshipin.com; } } # 额外的服务器配置 server { listen 30001; listen [::]:30001; server_name $host_name; add_header X-Cache-Status $upstream_cache_status; add_header X-Cache-TTL $upstream_http_x_cache_ttl; proxy_set_header User-Agent "TiviMate/5.1.0"; proxy_set_header Referer "https://www.stream-link.org/"; proxy_set_header Host www.stream-link.org; proxy_set_header Accept "*/*"; # 允许所有类型的内容 proxy_set_header Connection "keep-alive"; proxy_ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # 指定 SSL 协议 proxy_ssl_ciphers HIGH:!aNULL:!MD5; # 设置加密套件 proxy_ssl_verify off; # 忽略上游服务器证书验证 proxy_ssl_server_name on; proxy_cache cache_zone; # 使用指定的缓存区域 proxy_cache_lock on; # 启用缓存锁 location / { proxy_pass https://www.stream-link.org; # 使用变量替换源站地址 } } # 其他服务器配置 server { listen 30002; listen [::]:30002; server_name $host_name; location / { proxy_pass https://sc2025.stream-link.org; proxy_set_header Host sc2025.stream-link.org; proxy_set_header User-Agent "TiviMate/5.1.0"; proxy_set_header Referer "https://sc2025.stream-link.org/"; proxy_redirect ~https?://[^/]+(/.*) http://$host:30003$1; } } server { listen 30003; listen [::]:30003; server_name $host_name; location / { proxy_pass https://live-edge-06.stream-link.org; proxy_set_header Host live-edge-06.stream-link.org; proxy_set_header User-Agent "TiviMate/5.1.0"; proxy_set_header Referer "https://live-edge-06.stream-link.org/"; } } }