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以外的请求,则用户代理不能自动重定向请求,除非用户可以确认它,因为这可能会改变发出请求的条件。
注意:在收到301状态码后自动重定向POST请求时,某些现有的HTTP/1.0用户代理会错误地将其更改为GET请求。
我很难找到任何主流浏览器的具体浏览器文档,说明它们是如何处理这些问题的。
我已经开始挖掘firefox的源代码,但很快就迷失了方向。
以下情况是否适用于哪种浏览器(如果有),是否有明确的文档说明Firefox或IE的情况?
第一次:
任何后续的时间:
发布于 2012-09-29 06:48:50
您可以使用此解决方法
为用户设置302
重定向,为搜索引擎设置301
重定向。在服务器端,只需检查用户代理。如果是机器人,执行301
重定向。否则,执行302
。
这不是“黄金之路”,但它很有效。
https://stackoverflow.com/questions/2666089
复制相似问题