没有https加载页面

Loading page without https

我在 AWS 上使用 Route53 设置我的站点,负载均衡器以 https 开头。

我的负载均衡器只为 https 打开。

没有 https,我无法加载我的页面。

我看到带有 https 的链接,例如 www.google.com,即使它们有 https,我也不需要在浏览器中输入 https。

只需在浏览器中输入 www.google.com 即可加载 https://www.google.com

但对我来说 www.domainname.com 已键入,但未加载 https://www.domainname.com

我该如何设置?是 AWS 设置的问题吗?

如果您的负载均衡器仅针对 HTTPS 打开,则不会在端口 80 上侦听 HTTP 请求。您应该同时允许 HTTP 和 HTTPS,并将您的 Web 服务器配置为始终从 HTTP 重定向到 HTTPS。这就是 Google 所做的。

@Sergey Kovalev 的回答是正确的。我需要在 elb 上同时打开 http 和 https。然后在你的页面所在的文件夹设置重定向,意思是index.php所在的位置。

如何设置, 在文件 .htaccess 中,放入以下 ​​X-Forwarded-Proto 代码

<VirtualHost *:80>
    RewriteEngine On
    RewriteCond %{HTTP:X-Forwarded-Proto} !https
    RewriteCond %{HTTP_USER_AGENT} !^ELB-HealthChecker
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,NE]
</VirtualHost>

然后把代码放到index.php所在的文件夹里

然后就可以了。