2012-05-17 4 views
2

나는 새 도메인 내 모든 기존 도메인을 리디렉션하는 방법을 찾고 있어요여러 도메인 리디렉션

그들이 기본적인 수준에서 리디렉션 보이지만, 그것은 하위 범주 또는 파마 링크를 제공하는 경우 리디렉션이 전혀 작동하지 않습니다.

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] 

기본적인 수준의 리디렉션 괜찮 : mydomain1.com/graph.php => mydomain7.com

하지만도이 수준에서 더 중요한 것은 동일한 페이지

과로 리디렉션 할 수 없습니다 파마 - 링크 :

mydomain1.com/users/13/James => 더 재

답변

8

깨끗한 솔루션이 아닌 도메인을 리디렉션하는 것 www.mydomain7.com

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

완벽, 그 굉장했다! –

2

모든한다 RewriteCond는 기본적으로 AND로하고 %{HTTP_HOST}의 값이 동시에 모든 도메인이 될 수 없기 때문에 따라서 규칙이 작동하지 않습니다.

는 제안 가벤에 의해 부정를 사용하거나 다음과 같은 코드를 재 작성 다음 중 하나를

RewriteCond %{HTTP_HOST} ^(www\.)?(mydomain1|mydomain2|mydomain3|mydomain4|mydomain5|mydomain6)\.com$ [NC] 
RewriteRule^http://www.mydomain7.com%{REQUEST_URI} [L,R=301] 
관련 문제