2009-02-09 92 views
1

我有一個子域,我想使用mod_rewrite重定向到不同的位置。例如:重寫CNAME子域

subdomain.example.com - > www.example.com/subdomain

我不想重定向發送到瀏覽器雖然(所以它不知道的頁面是不同的) 。

BTW subdomain.example.com有一個指向example.com的CNAME記錄。

編輯

又如,只是爲了闡明。這很簡單:如果http://x.abc.com被輸入到瀏覽器中,Apache將返回http://www.abc.com/x的內容。

回答

3

如果兩個域共享相同的目錄,你可以這樣做改寫內部的要求:

RewriteCond %{HTTP_HOST} ^([^.]+)\.example\.com$ 
RewriteRule !^subdomain/ subdomain%{REQUEST_URI} 

的問題已經得到澄清之後:這個工作對我來說:

RewriteCond %{HTTP_HOST} ^([^.]+)\.example\.com$ 
RewriteCond %1.%{THE_REQUEST} ^([^.]+)\.[A-Z]+\ (/[^\ ]*) 
RewriteCond %{DOCUMENT_ROOT}$1 !-d 
RewriteRule ^([^/]+)? %1%2 

但你最好用Brandon表示。

+0

我不知道我按照你上面的例子,但我想要做的是非常簡單的:如果http://x.abc.com被輸入到瀏覽器中,Apache返回http://www.abc.com/x的內容。謝謝! – 2009-02-10 00:06:53

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