Jon*_*son 19 firefox internet-explorer webclient behavior http-status-code-301
RFC似乎建议客户端永久缓存响应:http: //www.w3.org/Protocols/rfc2616/rfc2616-sec10.html
10.3.2 301永久移动
已为所请求的资源分配了一个新的永久URI,并且此资源的任何将来的引用应该使用返回的URI之一.具有链接编辑功能的客户端应尽可能自动将对Request-URI的引用重新链接到服务器返回的一个或多个新引用.除非另有说明,否则该响应是可缓存的.
新的永久URI应该由响应中的Location字段给出.除非请求方法是HEAD,否则响应的实体应该包含一个带有指向新URI的超链接的短超文本注释.
如果收到301状态代码以响应GET或HEAD以外的请求,则用户代理不得自动重定向请求,除非用户可以确认,因为这可能会改变发出请求的条件.
Run Code Online (Sandbox Code Playgroud)Note: When automatically redirecting a POST request after receiving a 301 status code, some existing HTTP/1.0 user agents will erroneously change it into a GET request.
我很难找到任何主要浏览器的具体浏览器文档,说明他们如何处理这些.
我已经开始挖掘firefox的源代码,但很快就迷路了.
对于哪些(如果有的话)浏览器,以下情况是否属实,并且是否有适用于Firefox或IE的权威文档?:
第一次:
任何后续时间:
小智 12
我做了一些测试,发现有些浏览器会缓存301结果:
Caches 301 result and skips contacting old address in future? Internet Explorer 7 no Firefox 3.0 no Chrome 4.0 yes Opera 10.01 yes for google.com, no for www.rnhart.net
我使用以下两个301结果来测试:
我在自己的计算机上启动了代理服务器(Proxomitron Naoko 4.2,关闭所有过滤器).在每个浏览器中,我将代理设置设置为指向我自己的计算机.我清除了浏览器的缓存,然后多次访问旧地址并查看代理服务器的日志窗口以查看浏览器发出的请求.
第一次访问旧地址时,代理日志显示旧地址请求,301响应和新地址请求.如果再次访问旧地址,则日志显示相同的请求集(301未缓存),或者仅显示新地址请求(301已缓存).
我测试了在地址栏中输入旧地址,从书签访问旧地址,以及从页面上的链接访问旧地址.无论访问地址如何,每个浏览器都以相同的方式工作.
[我在调查类似的超级用户问题时发现了这个问题:浏览器是否更改已保存书签的URL以响应301重定向?]
归档时间: |
|
查看次数: |
7944 次 |
最近记录: |