小编典典

将非 www 重定向到 .htaccess 中的 www

all

我的 .htaccess 文件中有这个:

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

但是每当我访问我的根目录上的文件时,http://example.com/robots.txt它都会重定向到http://www.example.comrobots.txt/.

我该如何纠正这个问题,以便它正确重定向到http://www.example.com/robots.txt


阅读 56

收藏
2022-06-20

共1个答案

小编典典

将您的配置更改为此(添加斜杠):

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

或者下面概述的解决方案适用于任何域:

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

如果您需要支持 http 和 https 并保留协议选择,请尝试以下操作:

RewriteRule ^login\$ https://www.%{HTTP_HOST}/login [R=301,L]

替换logincheckout.php支持 HTTPS 所需的 URL 或任何 URL。

2022-06-20