使用htaccess重写规则进行多域重定向

Mac*_*lor 2 .htaccess mod-rewrite url-rewriting

我正在寻找一种方法将所有旧域重定向到新域,

看起来它们在基本级别被重定向,但是当它来到子类别或perm链接时,根本没有重定向.

    Options +FollowSymLinks 
    RewriteEngine on

    RewriteCond %{HTTP_HOST} (www\.)?mydomain1\.com$ [NC]
    RewriteCond %{HTTP_HOST} (www\.)?mydomain2\.com$ [NC]
    RewriteCond %{HTTP_HOST} (www\.)?mydomain3\.com$ [NC]
    RewriteCond %{HTTP_HOST} (www\.)?mydomain4\.com$ [NC]
    RewriteCond %{HTTP_HOST} (www\.)?mydomain5\.com$ [NC]
    RewriteCond %{HTTP_HOST} (www\.)?mydomain6\.com$ [NC]

    RewriteRule ^(.*) http://www.mydomain7.com/$1 [QSA,L,R=301]
Run Code Online (Sandbox Code Playgroud)

基本级别重定向很好:mydomain1.com/graph.php => mydomain7.com

但即使在这个级别,它也无法重定向到同一页面

更重要的是perm-links:

mydomain1.com/users/13/James =>没有重定向

Ger*_*ben 8

最干净的解决方案是重定向任何不是www.mydomain7.com的域名

RewriteCond %{HTTP_HOST} !^www\.mydomain7\.com$ [NC]
RewriteRule ^(.*) http://www.mydomain7.com/$1 [L,R=301]
Run Code Online (Sandbox Code Playgroud)