我有一些图像标签在这样的网站上。
<img src="img.png"/>
当我尝试加载它们时,它们只加载了一半。当我在网络控制台中检查请求时,我看到响应是:206部分内容我在谷歌上搜索了一下,它说如果在标题中设置了一个范围,它会是这样的。但是这些标题实际上是在哪里设置的呢?我如何避免这种情况并加载完整的图像?
f0brbegy1#
问题Why does Firebug show a "206 Partial Content" response on a video loading request?当客户端请求范围(例如“给予我视频数据的第一个2MB”)时,该部分内容代码(206)* 可以 * 从服务器发送。这对于分块下载数据以避免获取未使用的资源是至关重要的。(我很少在线观看完整的视频。)看看Range头的传出请求。
Range
eanckbw92#
客户端可以通过另一个调用来获取其余的数据(或下一位),你不需要做任何事情,他们最终会得到完整的图像,即使需要几个http调用。
vsmadaxz3#
首先:HTTP**206 Partial Contentsuccess status响应代码指示请求已成功,响应正文包含请求的数据范围,如请求的Range标头中所述。如果只有一个范围,则整个响应的Content-Type设置为文档的类型,并提供Content-Range。如果发送回多个范围,则Content-Type设置为multipart/byteranges,并且每个片段覆盖一个范围,用Content-Range和Content-Type描述该范围。(From Mozilla's excellent HTTP status code reference.)下一篇:在资源上设置的HTTP头通常是由Web服务器设置的。但是,如果文件很大,例如正在加载的资源的视频文件the browser can request a chunk。通常,客户端发起的请求会返回HTTP 206**标头。apache中资源的标头设置在httpd.conf的mod_headers部分中。查找以下行,查看是否打开了部分内容:
206 Partial Content
Content-Type
Content-Range
multipart/byteranges
HTTP 206
httpd.conf
mod_headers
Header set Accept-Ranges bytes
本节控制apache设置的头的行为,因此将是一个很好的起点。设置头文件可以用很多不同的方法来完成,例如,当使用apache时,你可以控制加载的图像,这样它们就可以被缓存,这可以用[a2enmod module][2]来完成,这将减少服务器的负载。
[a2enmod module][2]
piah890a4#
我在从不同的子域加载字体时也遇到过类似的问题。在我的例子中,由于跨域问题,我得到了206个字体,我只需要在根文件夹中放置一个.htaccess文件就可以解决这个问题:
<IfModule mod_headers.c> Header set Access-Control-Allow-Origin "*" </IfModule>
4条答案
按热度按时间f0brbegy1#
问题Why does Firebug show a "206 Partial Content" response on a video loading request?
当客户端请求范围(例如“给予我视频数据的第一个2MB”)时,该部分内容代码(206)* 可以 * 从服务器发送。
这对于分块下载数据以避免获取未使用的资源是至关重要的。(我很少在线观看完整的视频。)看看
Range
头的传出请求。eanckbw92#
客户端可以通过另一个调用来获取其余的数据(或下一位),你不需要做任何事情,他们最终会得到完整的图像,即使需要几个http调用。
vsmadaxz3#
首先:
HTTP**
206 Partial Content
success status响应代码指示请求已成功,响应正文包含请求的数据范围,如请求的Range
标头中所述。如果只有一个范围,则整个响应的
Content-Type
设置为文档的类型,并提供Content-Range
。如果发送回多个范围,则
Content-Type
设置为multipart/byteranges
,并且每个片段覆盖一个范围,用Content-Range
和Content-Type
描述该范围。(From Mozilla's excellent HTTP status code reference.)
下一篇:
在资源上设置的HTTP头通常是由Web服务器设置的。但是,如果文件很大,例如正在加载的资源的视频文件the browser can request a chunk。通常,客户端发起的请求会返回
HTTP 206
**标头。apache中资源的标头设置在httpd.conf
的mod_headers
部分中。查找以下行,查看是否打开了部分内容:本节控制apache设置的头的行为,因此将是一个很好的起点。
设置头文件可以用很多不同的方法来完成,例如,当使用apache时,你可以控制加载的图像,这样它们就可以被缓存,这可以用
[a2enmod module][2]
来完成,这将减少服务器的负载。piah890a4#
我在从不同的子域加载字体时也遇到过类似的问题。在我的例子中,由于跨域问题,我得到了206个字体,我只需要在根文件夹中放置一个.htaccess文件就可以解决这个问题: