我在htaccess上使用了这段代码,将网站所有版本的URL重定向到https://www
,但有些工具显示重定向链错误。有人能解决这个问题吗?
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteCond %{HTTP_HOST} ^(.*)$ [NC]
RewriteRule (.*) https://www.%1/$1 [R=301,L]
根据您当前的指令,如果您请求http://www.example.com/
,它将重定向到https://www.www.example.com/
——这显然不是目的。
您需要修改捕获第三个条件以排除可选的www.
子域。
例如:
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteCond %{HTTP_HOST} ^(?:www.)?(.*)$
RewriteRule (.*) https://www.%1/$1 [R=301,L]
但一些工具显示重定向链错误
不管"一些工具"显示什么,重要的是您的网站报告什么。