2011-12-14 578 views
4

我有一個多站點與Drupal,我創建了一個網站,首先應該可以以多種方式訪問​​(子域和路徑),但現在我想保留其中的一個;所以我會重新引導所有其他人。現在,我有:htaccess重定向子域到子目錄

aaa.domain.com/
bbb.domain.com/
domain.com/aaa/
domain.com/bbb/
www.domain.com/aaa/
www.domain.com/bbb/

而且我想他們都重定向到http://www.domain.com/bbb/

我試着寫:

RewriteCond %{HTTP_HOST} ^aaa.domain.com$ [OR]<BR> 
RewriteCond %{HTTP_HOST} ^bbb.domain.com$ [OR]<BR> 
RewriteCond %{HTTP_HOST} ^www.domain.com\/aaa$ [OR]<BR> 
RewriteRule ^/?$ "http\:\/\/www\.domain\.com\/bbb\/" [R=302,L] 

我將使用302和301,直到它按預期工作。
如果我entern aaa.domain.com它能正常工作,但如果我進入
http://aaa.domain.com/page/1
它不工作

我讀什麼我可以約htaccess的,但我失去了一些東西。

感謝

回答

5

以下內容添加到您的.htaccess文件在您的domain.com站點的根目錄。

RewriteEngine On 
RewriteBase/

#if request is not on www.domain.com 
RewriteCond %{HTTP_HOST} !^www\.domain\.com$ [NC] 
#and it is not for a folder starting with /bbb/ 
RewriteCond %{REQUEST_URI} !^/bbb/ [NC] 
#redirect to www.domain.com/bbb/ 
RewriteRule .* http://www.domain.com/bbb/ [L,R=301] 
+1

+1很好的解釋... – 2012-07-02 07:30:57