什么是HTTP 206部分内容状态消息的含义及如何做我完全加载的资源?(What does the

2019-08-19 06:10发布

我有这样一个网站的一些图像标记。

<img src="img.png"/>

当我尝试加载他们,他们只有一半的负载。 当我检查了网络控制台请求我看到的反应是:

206部分内容

我GOOGLE了它和它说,如果在头中设置一个范围,它会是这样。 但是,在被这些标题的实际设置? 我如何避免这一点,并加载完整的图像?

Answer 1:

从user166390的回答这个问题为什么Firebug的显示在视频加载请求一个“206部分内容”的反应?

这部分内容代码(206) 可以从服务器发送当客户端已要求范围(如“给我的视频数据的第一2MB”)。

它是在避免获取未使用的资源块下载数据至关重要。 (我很少在线观看完整的视频。)看的传出请求Range标头。



Answer 2:

它是由客户端放在另一个调用来获取数据的其余部分(或下位)。 你不必做任何事情,他们会得到完整的图像,最终,即使这需要几个HTTP调用。



Answer 3:

加载从不同的子域的字体,当我有类似的问题。 在我来说,我得到206由于跨域问题,我解决它只是通过把一个.htaccess文件在我的根文件夹:

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>


Answer 4:

首先:

的HTTP 206 Partial Content成功状态响应代码表示请求已经成功且具有主体包含数据的所请求的范围,如在所描述的Range的请求的报头中。

如果仅存在一个范围,所述Content-Type的全局响应的被设置到文档的类型,和Content-Range设置。

如果几个范围被送回时, Content-Type设置为multipart/byteranges ,并且每个片段覆盖一个范围,与Content-RangeContent-Type描述它。

( 从Mozilla的优良的HTTP状态代码参考。 )

下一个:

对资源设置HTTP标头通常是由Web服务器设置。 但是,如果文件很大,像一个视频文件,浏览器可以请求块正在被加载的资源。 通常一个HTTP 206头会从客户端发起的请求返回。 在Apache中的资源设置的报头中设置mod_headers的第httpd.conf 。 看看下面的行,看看部分内容已开启:

Header set Accept-Ranges bytes

这部分控制由阿帕奇设定所以这将是一个良好的开端头的行为。

设置标头可以然而,在许多不同的方式来完成。 使用Apache例如,当你能够控制加载,使他们将缓存图像。 这可以通过使用来完成[a2enmod module][2] 这将减少你的服务器上的负载。



文章来源: What does the HTTP 206 Partial Content status message mean and how do I fully load resources?