Linux 使用 .htaccess 将 www 重定向到非 www

Linux 使用 .htaccess 将 www 重定向到非 www

我正在尝试重定向www.example.comhttp://example.com使用.htaccess我的根目录中的文件。

我已经尝试过这里和其他地方列出的示例。rewriteengine已开启。

rewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
rewriteRule (.*) //%1/$1 [L,R=301]

我已将其插入到.htaccess文件的不同位置,但出现重定向错误,提示重定向不正确。

在上面的例子中,我需要在某处插入我的实际网站信息吗?如果需要,有人能给我举个例子吗www.example.com

我通过 GoDaddy 使用基于 Linux 的服务器。

答案1

RewriteCond %{HTTP_HOST} ^www.example.org$
RewriteRule ^(.*)$ http://example.org/$1

答案2

您目前有

RewriteCond %{HTTP_HOST} ^www.(.) [NC]
RewriteRule (.) //%1/$1 [L,R=301]

我想你已经快到了。请记住,在正则表达式中,一个点.匹配一个单身的字符。如果要匹配一个或多个字符,请尝试.+。如果要匹配零个或多个字符,请使用.*。例如:

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

http:(您还需要重定向 URL 的前导)。

相关内容