最近项目中用系统播放器播放MP4文件出了一个问题,用Safari播不了用Chrome可以播放,细查了原因,发现是服务器的问题,原来服务器不支持Content-Range特性。
Safari首先读取文件类型头来判断视频文件是否支持。
因此,对于不支持这个特性的 HTTP 服务器,Safari 就拒绝在线播放,Chrome无此限制。
解决方案:服务器加上这个特性的支持。
测试服务器是否支持:
curl --range 0-99 [MP4 URL]
如果返回的是100个字节的内容,说明服务器支持断点续传;否则返回整个文件。