.htaccess 是否在不指定域的情况下将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?您可能可以使用捕获组并结合重写。。。(完全未经测试的猜测) 试试这个: #*********

我正在使用此代码从我的域中删除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]