我在.htaccess中编写了一个错误的301重定向
因为它是永久的,所以我的浏览器/代理总是将我重定向到错误的地址,即使我在.htaccess中更改了重定向位置地址
我怎样才能摆脱这个旧的/错误的301重定向?
设置清楚:我知道如何用mod_rewrite在.htacces中使用301。我要un-301
发布于 2014-05-07 15:53:26
它可以通过mod_redirect和mod_header在htaccess中完成。
神奇之处在于,您可以在重写中使用[E]修饰符设置一个环境变量,如果设置了环境变量,还可以设置非缓存头。
下面是代码
RewriteCond %{HTTP_HOST} !^mark\.koli\.ch [NC]
## the [E=nocache:1] modifier sets the environment variable "nocache"
RewriteRule ^/(.*)$ http://mark.koli.ch/$1 [R=301,L,E=nocache:1]
## Set the response header if the "nocache" environment variable is set
## in the RewriteRule above.
Header always set Cache-Control "no-store, no-cache, must-revalidate" env=nocache
## Set Expires too ...
Header always set Expires "Thu, 01 Jan 1970 00:00:00 GMT" env=nocache向blog entry中的Mark S. Kolich致敬
当然,这应该在重定向发生之前完成。因此,在此之后,每个301重定向都不会被缓存,并且可以在没有模糊的情况下进行更改。
也许甚至可以通过apache_setenv用PHP设置环境变量。
发布于 2012-05-12 00:25:05
这不依赖于您的服务器配置,因为浏览器/代理决定查询您的网页或使用缓存的重定向。你应该清理(或关闭)浏览器/代理中的缓存。如果您不能做到这一点,只要等到缓存超时(这取决于代理设置)到期。
https://stackoverflow.com/questions/10554649
复制相似问题