【问题标题】:SSL certification not working when I don't use https before my domain name当我在域名前不使用 https 时,SSL 认证不起作用
【发布时间】:2020-11-08 13:42:52
【问题描述】:

所以我能够为我的网站获取 SSL 证书,它在 AWS 上,但是由于某种原因,当我输入 www.mydomain.com 或 mydomain.com 时,它仍然在浏览器上显示为不安全,但是当我将 https 添加到 mydomain.com 时显示安全图标。请问大家有什么办法解决吗?

【问题讨论】:

  • 您从哪里为该网站提供服务?前面有 CDN 或负载均衡器吗?您需要添加从 HTTP 到 HTTPS 的重定向。例如,在 CloudFront 中,这是一个简单的设置。

标签: amazon-web-services ssl ssl-certificate


【解决方案1】:

上述答案有效,但此外,如果您在 AWS EC2 实例中使用负载均衡器,您可以点击此视频链接获得最佳解释和实践。 How to redirect HTTP traffic to HTTPS in the EC2 Elastic Load Balancer

【讨论】:

    【解决方案2】:

    Web 应用程序中的 SSL 仅在您的用户使用 HTTPS 加载网站时执行。通常在这种情况下,您会希望执行重定向(302 最初比 301 更可取,因为它在回滚时不是永久的)。

    您可以通过多种方式触发重定向,而无需进行任何服务器更改,这完全取决于您的基础架构设置。

    如果第一个呼叫点是 CloudFront,您可以update your viewer protocol policy to Redirect HTTP to HTTPS。 CloudFront 将在任何 HTTP 请求触及源之前重定向它们。

    如果您使用的是应用程序负载平衡器,那么您可以update your listener rule for HTTP to redirect HTTP to HTTPS。与上述请求一样,不会将其转发给您的主机。

    否则,如果您是 Classic Load Balancer、Network Load Balancer 或只是普通的 EC2,那么您需要修改主机的配置来执行重定向(记得设置为 302)。

    以下是最常见的网络服务器的链接:

    一旦您对重定向感到满意,请随时设置为301

    【讨论】:

      【解决方案3】:

      原因是服务器没有重定向策略,需要添加重定向策略将站点从HTTP重定向到HTTPs

      如果您使用的是应用程序负载均衡器,您可以阅读以下文章来设置 HTTP 到 HTTPS 的重定向。

      redirect-http-to-https-using-alb

      如果你使用的是 Nginx,那么你可以查看redirect-http-to-https-in-nginx

      https-everywhere

      【讨论】:

        猜你喜欢
        • 2016-06-14
        • 2016-07-10
        • 2011-01-26
        • 2020-03-26
        • 1970-01-01
        • 1970-01-01
        • 2013-12-13
        • 1970-01-01
        • 2014-04-23
        相关资源
        最近更新 更多