.htaccess文件是否缓存以前的说明?

时间:2016-07-23 18:28:57

标签: apache .htaccess redirect mod-rewrite plesk

这里有点奇怪的问题我无法理解。

所以我一直以非常业余的方式玩我的.htaccess文件。我成功地将一个简单的301重定向从一个URL添加到另一个URL。但是我已经删除了这条指令,仍然会发生重定向。

为了解决问题,我在文件中添加了另一条规则,但是没有执行。我试着删除该文件。这停止了​​初始301重定向的发生(即使指令不在文件中)。

我读了.htcaccess文件并添加了我的新规则,现在可以使用了,但原来的301重定向仍然存在。

这让我感到很困惑,如果有人知道这里发生了什么,将会有所帮助。

我正在运行plesk 12,如果这有任何区别。

所以现在我的.htaccess文件看起来像这样:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^domain\.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301,NC]

然而我的网址/网页/页面仍然301重定向到/页面(即使显然没有规则在那里)

2 个答案:

答案 0 :(得分:2)

调试此类问题的一种方法是启用mod重写的日志记录,例如在httpd.conf中添加LogLevel info rewrite:trace5并拖尾apache错误日志以查看apache如何处理重写规则。有关日志文件的文档:https://httpd.apache.org/docs/2.4/logs.html,请参阅每个模块的日志记录部分。

答案 1 :(得分:0)

注意网络浏览器正在积极地缓存重定向301.

顺便说一句,如果您只需要简单的重定向domain.tldwww.domain.tld,就会有特殊选项"首选域名"在托管设置中:

plesk-301-redirect-htaccess