逆转 .htaccess 重定向规则

逆转 .htaccess 重定向规则

让我举例说明。假设我的 .htaccess 文件中有以下重定向规则:

RedirectMatch 301 ^/([^/]+)/([^/]+)/$ http://www.example.com/$2

它的基本作用是重定向http://www.mysite.com/sports/test-post/http://www.mysite.com/test-post/

现在,我该如何修改 .htaccess 规则来做相反的事情?(即重定向http://www.mysite.com/test-post/http://www.mysite.com/sports/test-post/

答案1

RewriteCond %{REQUEST_URI} !^/sports/ [NC]
RewriteRule ^/([^/]+)/(.*)$ http://www.example.com/sports/$1/$2 [R=301]

这也会发送/test-post/blah//sports/test-post/blah- 如果您不想在有额外内容时进行重定向,请(.*)从匹配字符串和$2替换字符串中删除。

相关内容