强制浏览器忘记缓存重定向?

时间:2014-04-30 20:01:56

标签: .htaccess caching redirect browser http-status-code-301

我继承了以前从根目录(“/”)到“/index.shtml”的301重定向的域名

我已删除了域名中的重定向和其他网站,但过去访问该网站的用户将在其浏览器中缓存重定向行为...持续时间非常长,除非他们手动清除其缓存

任何试图在这些浏览器中访问example.com的人都会在发出任何HTTP请求之前发送到example.com/index.shtml。现在这是一个很大的问题,因为没有index.shtml,但是我可以用标题来告诉浏览器“忘记你刚刚做过的重定向!”?

2 个答案:

答案 0 :(得分:4)

简短回答:没有办法告诉浏览器用户“忘记”R 301重定向。 301表示永久性,只能在用户操作或缓存过期时撤消。

http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.2

Stackoverflow上类似的Q和A: Apache - how to disable browser caching while debugging htaccessCannot remove 301 redirect

尽量避免使用301重定向并使用302(暂时)。这篇文章是如何为301重定向设置无缓存(没试过): http://mark.koli.ch/set-cache-control-and-expires-headers-on-a-redirect-with-mod-rewrite

您可以在您的场景中执行的操作:您可以将头重定向添加到文件index.shtml,该文件将用户发送到原始文件,他通常应该在该文件中。

答案 1 :(得分:1)

这可以通过清除数据缓存来完成。 它可以删除所有,.htaccess 从浏览器重定向更改。

enter image description here