2011-04-04 83 views
0

我在我的服務器上設置了通配符子域名(* .domain.com)。我現在想使用.htaccess將所有* .domain.com請求重定向到我的服務器上的腳本main.php。我搜索了可以幫助完成重定向的代碼,但我並沒有完全成功。我已經找到了最好的工作代碼爲:我怎樣才能正確捕捉所有的子域(和重定向)與.htaccess?

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(.+)\.domain\.com$ [NC] 
RewriteRule ^(.*)$ http://domain.com/%1 [QSA,R=301,L] 

然而,www.subdomain.domain.com被重定向到domain.com/www.subdomain而不是domain.com/subdomain。這怎麼可以在代碼中解決?有沒有更好的方法來做到這一點?

在此先感謝!

回答

1

你可以試試這個重寫規則:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(www\.)?(.+)\.domain\.com$ [NC] 
RewriteRule ^(.*)$ http://domain.com/%2 [R=301,L] 
+0

什麼是REQUEST_URI? – tundoopani 2011-04-04 05:35:07

+0

@tundoopani:在這樣的網址'http:// stackoverflow.com/questions' REQUEST_URI是'questions',HTTP_HOST是'stackoverflow.com' – anubhava 2011-04-04 05:37:21

+0

有沒有辦法讓www。可選的? – tundoopani 2011-04-04 07:21:28

相關問題