中国青年报
Nginx 静态视频传输通常原生支持字节范围请求,播放器拖动进度时会发送 Range 请求,并期待服务器返回 206、Content-Range 和正确的 Content-Length。只添加 Accept-Ranges 响应头不能凭空创造断点续传能力,文件读取模块、代理层和上游响应都必须允许范围请求。
proxy_set_hea📢der Connection "";
Nginx100%视频优化的验收标准应落在可验证指标上:范围请求正常、切片缓存命中符合预期、源站等待时间可控、慢客户端不会长期占满连接、峰值播放时带宽和磁盘没有持续饱和。达到✨这些条件后,再根据真实日志微调缓存时间、连接保持和限速参数,比复制一套固定配置更可靠。
HLS 与 DASH 视频切片通常比完整 MP4 更适合缓存,因为播放器只请求当前需要的片段。点播播放列表可以设置较长缓存时间,直播播放列表则应设置较短时间或禁止长时间缓存;已经生成且不会改变的 ts、fmp4 或 m4s 切片可以使用更长 TTL。切片缓存时,鉴权参数不能被无条件忽略,否则可能造成不同用户共用不应共享的内容。
Nginx ⚡反向代理 MP4 时,配置重点是避免无意义的整文件缓冲,并让上游正确返回范围响应。对于源站已经支持 Range 的渐进式 MP4,可以考虑关闭代理响应缓冲,让数据按客户端读取速度转发;对于 HLS 或 DASH 小切片,开启代理缓存通常更有效,因为相同片段能被多个请求复用。