.htaccess,重定向不起作用,RedirectMatch 起作用

.htaccess,重定向不起作用,RedirectMatch 起作用

我遇到了一种从未遇到过的情况。我们刚刚在主机之间移动了一个网站,在新主机上,.htaccess 文件中的 RedirectPermanent 和 Redirect 命令似乎被忽略了,但 RedirectMatch 却被遵守了。

例如:

RedirectMatch       /product/C15        http://example.com/topic/category/displays  

这有效

RedirectPermanent   /product/C534       http://example.com/topic/tag/TVs    

这不管用。我也试过

Redirect 301        /product/C534       http://example.com/topic/tag/TVs

这两种方法都不起作用。我检查过了,这与源无关(如果我切换 RedirectMatch 和 RedirectPermanent,则 RedirectMatch 的链接始终有效,而另一个链接始终失败。)

对于不起作用的规则,我最终只能访问 example.com/index.php/product/C15(例如)。就好像 apache 根本不承认 RedirectPermanent 规则

我确实在 htaccess 中设置了一些 mod 重写规则来删除 index.php,但我尝试从空白 .htaccess 开始,只设置 1 条 RedirectPermanent 规则,但仍然失败。Apache 错误日志未显示任何内容,访问日志仅显示这些 URL 转到 404。

我使用的是托管帐户,所以我只能说这么多了。我们至少有十几个不同的帐户使用同一个主机,而 .htaccess 在所有其他帐户上都按预期运行。

有什么想法吗?我已将此问题提交给 ISP,但他们的政策是,他们不提供 .htaccess 问题的支持,但对我来说,这有点像是 apache 配置问题。

答案1

尝试打开重写日志。要打开它,请在 apache 主配置或当前虚拟主机文件(而不是 .htaccess 中)中尝试以下几行:

LogLevel alert rewrite:trace6

相关内容