我正在尝试通过 https 运行我的整个网站并强制使用 www。
我已经看到了许多提供强制 www 或 https 的解决方案,甚至有几个结合在一起,但我似乎无法让任何工作。我通常发现自己处于重定向循环中。
我得到的最接近的是以下,但还不够接近:
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]
我需要https://www.example.com/
http://example.com SUCCESS
https://example.com SUCCESS
http://www.example.com FAIL
https://www.example.com SUCCESS
,虽然没有实际的重定向。
谢谢
更新
以下代码成功执行了我需要的重定向:
RewriteCond %{ENV:HTTPS} !on [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
RewriteCond %{ENV:HTTPS} on [NC]
RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]