我正在构建一个页面(使用 video.js,如果有关系的话),它可以容纳相当大量视频的播放器——单击图像缩略图上的一个按钮,一个模态播放器打开,播放视频。工作正常; 没什么大不了。我的服务器是 Apache 2.2.15,fwiw。
问题:当我查看我的服务器日志时,我会看到每个视频的条目,其 HTTP 代码为 206(部分内容),例如:
GET /videos/a_video.mp4 HTTP/1.1" 206 1130496 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) AppleWebKit/537.73.11 (KHTML, like Gecko) Version/7.0.1 Safari/537.73.11"
我不确定这些条目的确切含义。加载此页面时,是否真的有 1.1 MB 的内容通过网络推送到客户端,或者这只是客户端在/如果用户真正请求文件时要使用的信息?将所有这些东西转储到用户/客户端对于某人的带宽(包括我的网站)来说是一件非常猪的事情,尤其是在移动连接上。(基于一些额外的日志分析,看起来这些位真的被推动了,但与其他更有知识的人一起检查这似乎是正确的做法......)
这对我来说看起来很正常。大多数视频(甚至音频!)播放器一次请求文件的小块,然后在用户实际播放视频时再请求更多。206 仅在用户代理专门请求文件的特定范围而不是整个文件时发送。