当我键入http://domain.com时,我为域安装了HTTPS证书,当我键入https://domain.com时,它不会重定向到http。 我的.htaccess已经
了Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
答案 0 :(得分:0)
当我输入https://domain.com时,它不会重定向到http。
您的RewriteCond
指令将规则限制为以www
开头的域名,因此与domain.com
的测试网址不符。
您可以使用https://www.domain.com
进行测试,也可以更改以下规则
RewriteCond %{HTTPS} on
#make the www optional
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$ [NC]
RewriteRule ^(.*)$ http://%2/$1 [R=301,L]
但是,我不喜欢这个解决方案,因为我无法理解你的意图背后的每个规则,例如您拥有的第二条规则应该导致无限重定向(假设这些是.htaccess中的唯一规则)。
如果您解释每个规则的意图,我将能够提供更好的答案