2

我以为我可以使用以下方法完成此操作,但它正在循环...

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteCond %{HTTPS_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

我需要做什么来确保域的所有实例都转到https://example.com而不循环?

4

1 回答 1

3

您的第一行检查主机是否是您要重定向到的主机。你不需要检查HTTPS_HOST,因为在https中,主机仍然是相同的(它来自请求头,Host:)。

尝试:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]
于 2012-09-13T17:08:19.893 回答