我看过很多关于重写的文章,但我有一个问题。
example.com => https:// example.com(确定)
www.example.com => https:// example.com(确定)
https:// example.com => https:// example.com(确定)
https:// www.example.com => https:// example.com(FAIL)
他尝试了几个论坛解决方案,但我遇到了同样的问题。现在我的htaccess是:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\.([^.]+\.[^.]+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,R=301,NE]
</IfModule>
答案 0 :(得分:0)
您可以使用:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.(.+) [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [NE,L,R=301]
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [NE,L,R=301]
</IfModule>
在您的代码中,第二次测试不使用http执行,%1不正确。