.htaccess 是否在不指定域的情况下将www.重写为非www?
我正在使用此代码从我的域中删除www:.htaccess 是否在不指定域的情况下将www.重写为非www?,.htaccess,.htaccess,我正在使用此代码从我的域中删除www: # remove www RewriteCond %{HTTP_HOST} ^www.example.com$ [NC] RewriteRule ^(.*)$ http://example.com/$1 [R=301,L] 我的问题是,我通常使用子域,这对它们不起作用。(www.sub.example.com) 无论域是什么,即使它有子域,我如何重写以删除www?您可能可以使用捕获组并结合重写。。。(完全未经测试的猜测) 试试这个: #*********
# remove www
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
我的问题是,我通常使用子域,这对它们不起作用。(www.sub.example.com)
无论域是什么,即使它有子域,我如何重写以删除www?您可能可以使用捕获组并结合重写。。。(完全未经测试的猜测) 试试这个:
#********** Remove www from address **********
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,NC]
这比另一种解决方案更为正确
编辑:
我删除了[L],因为它在这里不适用。尽管在大多数情况下,建议[NC]不区分大小写。您的问题是什么?刚才-我投了更高的票。对不起,我无意中提交了它。刚刚编辑了这个问题,看起来有人用这个答案击败了我。如果答案正确的话,他们不会真的抢他们的风头。
#********** Remove www from address **********
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,NC]