将Redirectmatch转换为RewriteRule

时间:2014-07-26 13:23:04

标签: regex .htaccess mod-rewrite redirect

我正在尝试在我们的子目录www.example.com/us/htaccess文件(不是root htaccess)中添加一行,以获取www.example.com/us和www.example.com/us/进行重定向到www.example.com,但没有别的 - 所以www.example.com/us/file.txt或www.example.com/dir/file.txt不会重定向。

我试过了:

RedirectMatch ^/us$ http://www.example.com/
RedirectMatch ^/us/$ http://www.example.com/

但由于文件中的其他重写条件(我认为),它导致循环。

我尝试按如下方式转换为RewriteRule

RewriteEngine on
RewriteRule ^us(.*)$ /$1 [R=301,L]

没有运气。

RewriteEngine on
RewriteRule ^us/?$ /$1 [R=301,L]

没有运气。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

这样就可以了解

RewriteEngine on
RewriteCond %{REQUEST_URI} ^/us/*$
RewriteRule ^(.*)$ / [R=301,L]