对我不起作用。我做错了什么,我得到了可怕的太多重定向错误。我正在尝试将我的所有urls强制为WWW和https
RewriteEngine on
RewriteBase /
RewriteCond %{http_host} ^all-service-musical.com [nc]
RewriteRule ^(.*)$ https://www.all-service-musical.com/$1 [r=301,nc]
RewriteCond %{http_host} ^asmusic.org [nc]
RewriteRule ^(.*)$ https://www.all-service-musical.com/$1 [r=301]
RewriteCond %{http_host} ^www.all-service-musical.com [nc]
RewriteRule ^(.*)$ https://www.all-service-musical.com/$1 [r=301,nc]前两条规则配合得很好,但第三条规则试图将www url改为https,这就破坏了整个规则……有什么想法吗?
我还尝试删除上述所有代码,并尝试通过使用以下命令来完成任务的http to https部分:
#RewriteEngine On
#RewriteCond %{HTTPS} off
#RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]当我使用这种方法时,我也得到了一个太多重定向的错误
2019年5月7日..好吧,还没有找到解决方案,但现在可以通过使用重写规则将所有内容定向到非WWW版本来解决这个问题。也许有一天有人会发布这个问题的一个可能的解决方案,我会把WWW添加回来。我尝试的主要原因是来自搜索的google链接指向WWW版本,它们出现在不安全的地方,而非WWW版本出现在安全的地方。
发布于 2019-07-06 00:37:34
好的..。2个月后我有了一个解决方案
RewriteEngine On
RewriteCond %{HTTP_HOST} ^all-service-musical.com$ [NC]
RewriteRule (.*) http://www.all-service-musical.com/$1 [R=302,L]
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^/?(.*) https://www.all-service-musical.com/$1 [L,R,NE]请注意,在第一个规则中,我转发到http而不是https,以避免在处理第二个规则时可能出现无休止的重定向。可能也适用于https,但我认为我应该做得足够好,因为在这一点上我有一个有效的规则。-再次使用网络解决方案作为我的主机,因此其中一些可能与他们的系统相关。
希望这些信息能为其他人节省一点时间和烦恼。
https://stackoverflow.com/questions/55978026
复制相似问题