浏览器如何使用查询字符串缓存301重定向

时间:2013-03-12 19:45:11

标签: url redirect http-headers http-status-code-301 http-redirect

我正在寻找301重定向到应用程序以获取查询字符串参数的特定值。

例如:

  • http://www.example.com/page?id=1→重定向到新页面
  • http://www.example.com/page?id=2→呈现正常回复

浏览器如何缓存重定向?

具体来说,在访问第一个网址后,某些浏览器会开始为id=2执行301重定向,还是会根据完整的网址重定向?

1 个答案:

答案 0 :(得分:1)

浏览器肯定会缓存301重定向,因为它是永久重定向。基本上你告诉浏览器永远不要查看原始URL并自动转到第二个URL。任何搜索引擎都会发生同样的事情。如果您计划再次使用该原始URL,请确保使用临时重定向。

  

具体来说,在访问第一个URL后,某些浏览器会启动   为id = 2执行301重定向,或者是基于的重定向   完整网址?

不,浏览器应该完整地看到每个URI,因此page?id=1是与Page1?Id=2不同的网址,301重定向仅适用于第一个网址。

请记住,浏览器正在执行重定向,并根据其对HTTP规范的解释实现自己的规则。如果浏览器中有任何错误,您可能会得到不可预测的结果,但简短的回答是它们对不同的URL有不同的请求,并且每个都获得自己的HTTP状态代码,因此可以将它们视为单独的页面。