单个MP4不够稳定时,改用自适应播放



如果视频由上游服务提供,必须确认Nginx没有丢弃客户端的Range和If-Range请求,也没有把上游返回的206、Content-Range和Content-Length错误改写。反向代理中的proxy_buffering不能一概而论:点播大文件可以利用缓冲减少上游连接压力,直播或需要尽快把数据推给播放器的场景则可能需要关闭或缩短缓冲。应根据首帧时间、磁盘🎉临时文件和上游连接数进行测试,而不是直接套用“关闭缓冲就一定更快”的结论。



静态MP4的Nginx基础配置



Nginx对静态文件通常原生支持字节范围请求,不要在视频目录中配置禁用Range的规则。检查时不要要求首次请求一定返回206,因为播放器首次获取完整文件信息时可能返回200;更🎉重要的是,拖动进度条或从中间开始播放后,响应是否出现206 Partial Content、Content-Range是否正确,以及服务器是否只传输请求的片段。



直播HLS的m3u8播放列表会持续变💯化,不能使用与固定💫视频分片相同的长缓存策略。一个常见的静态分发思路如下:



举报/反馈