更改域时未正确重定向 https
Not redirecting properly the https when changing domain
我的 Plesk 网站和域部分加载了两个域,
这两个域没有 www,
所以假设这两个域是:
example.com
example.es
当我从 example.es
重定向到 example.com
时,它已完成,但使用 http,而不是 https .
因此,我决定使用以下说明编辑我的 .htaccess
文件:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI}
但是我的页面没有正确加载,因为看到网络检查器它创建了一个无限循环的请求到我的主页 example.com
。
有人知道某种解决方案吗?
And I have Application Load Balancer for the ssl certificate that is inside my EC2 AWS machines.
请尝试以下操作:
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteCond %{HTTP:X-Forwarded-Proto} ^http$
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
负载平衡器和您的应用程序服务器之间的连接可能只是 HTTP,因此 HTTPS
Apache 服务器变量始终是 off
。
(首先使用 302 测试 - 临时 - 重定向以避免潜在的缓存问题。)
尽管如果您要将所有内容(即 example.es
)重定向到 example.com
,那么请改为执行以下操作:
RewriteCond %{HTTP_HOST} !=example.com [NC,OR]
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule ^ https://example.com%{REQUEST_URI} [R=301,L]
假设两个域都指向相同的文档根目录,那么您不需要在 Plesk 中进行重定向,否则听起来会导致 2 次重定向。
我的 Plesk 网站和域部分加载了两个域, 这两个域没有 www, 所以假设这两个域是:
example.com
example.es
当我从 example.es
重定向到 example.com
时,它已完成,但使用 http,而不是 https .
因此,我决定使用以下说明编辑我的 .htaccess
文件:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI}
但是我的页面没有正确加载,因为看到网络检查器它创建了一个无限循环的请求到我的主页 example.com
。
有人知道某种解决方案吗?
And I have Application Load Balancer for the ssl certificate that is inside my EC2 AWS machines.
请尝试以下操作:
RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteCond %{HTTP:X-Forwarded-Proto} ^http$
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
负载平衡器和您的应用程序服务器之间的连接可能只是 HTTP,因此 HTTPS
Apache 服务器变量始终是 off
。
(首先使用 302 测试 - 临时 - 重定向以避免潜在的缓存问题。)
尽管如果您要将所有内容(即 example.es
)重定向到 example.com
,那么请改为执行以下操作:
RewriteCond %{HTTP_HOST} !=example.com [NC,OR]
RewriteCond %{HTTP:X-Forwarded-Proto} =http
RewriteRule ^ https://example.com%{REQUEST_URI} [R=301,L]
假设两个域都指向相同的文档根目录,那么您不需要在 Plesk 中进行重定向,否则听起来会导致 2 次重定向。