2011-12-20 149 views
2

嗨,大家試圖讓301重定向工作和麻煩。我需要將sub.domain1.com重定向到www.domain2.com,並確保任何文件名或參數都通過它發送。重定向子域到新域

這是我嘗試:

RewriteCond %{HTTP_HOST} ^domain1.com [NC] 
RewriteRule ^(.*)$ http://www.domain2.com/$1 [L,R=301] 

我也試過這樣:

RewriteCond %{QUERY_STRING} ^$ 
RewriteRule ^sub\.domain1\.com$ /www.domain2.com? [R=301,NE,NC,L] 

我在哪裏搞亂?

回答

0

重寫文章的經驗法則:從最複雜到不那麼複雜。 而且不要忘了QSA指令(QSA =查詢字符串附加=「確保任何文件名或參數得到送過來吧」)

RewriteCond %{HTTP_HOST} ^sub\.domain1\.com$ [NC] 
RewriteRule ^(.*)$ http://www.domain2.com/$1 [QSA,R=301,L] 

告訴我,如果它的工作原理。

+0

工程就像一個魅力,謝謝 – spyke01 2011-12-20 12:53:51

+0

歡迎您!我的榮幸! – 2011-12-20 18:44:44

2

您錯過了子域部分和正確的轉義。

RewriteCond %{HTTP_HOST} ^sub\.domain1\.com$ [NC] 
RewriteRule ^(.*)$ http://www.domain2.com/$1 [L,R=301] 

可以進一步解釋in this question

+0

感謝工作就像一個魅力! – spyke01 2011-12-20 00:54:50