RedirectMatch不适用于更长的网址

时间:2013-01-14 10:29:50

标签: .htaccess rewrite

我遇到RedirectMatch 301的问题。它在顶级域名和附加的一个变量上工作正常,即

http://xenolith.ws/ redirects to xeno-mods.com
http://xenolith.ws/explore redirects fine as well
http://xenolith.ws/mods/122 does not work

我的RedirectMatch看起来像这样:

RedirectMatch 301 ^/(.*)$ http://xeno-mods.com/$1

我错过了什么?

1 个答案:

答案 0 :(得分:1)

在测试配置时,请勿使用301,请参阅此回答Tips for debugging .htaccess rewrite rules

根据您的配置以及您拥有此RedirectMatch的位置,前导/将被删除。你可以试试

RedirectMatch .* http://xeno-mods.com/$0

RedirectMatch .* http://xeno-mods.com$0

您也可以使用Redirect

Redirect / http://xeno-mods.com/

将所有请求重定向到新域。

不要忘记在浏览器中重新加载,因为之前的301测试,浏览器可能已经缓存了一些结果。

当重定向按预期工作时,您可以再次插入301状态代码。但没有它,测试就容易多了。