2013-03-12 130 views
2

我通過.htaccess重寫規則將非www請求重定向到www。.htaccess非www到www 301

的RewriteCond%{HTTP_HOST} ^!WWW

重寫規則(。*)萬維網。%{HTTP_HOST}/$ 1 [L,R = 301]

但現在我有問題與子域。當我訪問touch.111.com時,上面的規則將重定向到touch.www.111.com(觸摸設備上無法訪問並且無法訪問網站)。

請指教我解決上述問題。

感謝

回答

3

,如果你想只domain.com重定向到www.domain.com,並保留子域(如touch.domain.com)必須是具體的:

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

我已經試過您的解決方案,並在這種情況下,應用重定向,如:www.touch.domain.com :) 反正我現在已經改變了以服務加www的所有要求,這也是對SEO的角度來看是安全的。 – user2135768 2013-03-13 08:08:43

0
# For sites running on a port other than 80 
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC] 
RewriteCond %{HTTP_HOST} !^$ 
RewriteCond %{SERVER_PORT} !^80$ 
RewriteRule ^/(.*)   http://www.example.com:%{SERVER_PORT}/$1 [L,R] 

# And for a site running on port 80 
RewriteCond %{HTTP_HOST} !^www\.example\.com [NC] 
RewriteCond %{HTTP_HOST} !^$ 
RewriteRule ^/(.*)   http://www.example.com/$1 [L,R] 

http://httpd.apache.org/docs/2.0/misc/rewriteguide.html