0

我现在已经搜索了很多,但找不到答案。我试图让域(或任何其他指向它的域)重定向到没有“www”(如果存在)的版本,但要留下子域,因此它的工作方式如下:

http://www.domain.com -> http://domain.com
http://www.otherpointing.com -> http://domain.com
http://otherpointing.com -> http://domain.com
http://m.domain.com -> http://m.domain.com

到目前为止,我有以下内容,这似乎不尊重子域:

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

任何的想法?

4

1 回答 1

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

或可选地,保留来自其他域的子域:

RewriteCond %{HTTP_HOST} ^www\.domain\.com$ [NC,OR]
RewriteCond %{HTTP_HOST} !^(.+\.)?domain\.com$ [NC] 
RewriteRule ^(.*)$ http://%1domain.com/$1 [L,R=301]
于 2012-05-19T09:49:53.017 回答