【问题标题】:How to switch load-balancer from HTTP to HTTPS?如何将负载均衡器从 HTTP 切换到 HTTPS?
【发布时间】:2022-01-23 20:56:43
【问题描述】:

我有一个 Route 53 域,它映射到一个负载平衡器,它映射到一个 NodeJS Express 服务器 (check it out here)。但它目前使用的是 HTTP,所以我想切换到 HTTPS。我也准备好了 ACM SSL 证书。

我已尝试向负载均衡器添加监听器...

但是,当我在浏览器中输入地址时,它会超时。

所以,我试着编辑这个负载均衡器对应的安全组...

但它仍然超时。

感谢您的帮助。

额外参考:

附:这可能是 API 本身的问题,即我是否必须向 API 添加任何额外的配置?

【问题讨论】:

    标签: amazon-web-services amazon-route53 aws-acm


    【解决方案1】:

    您当前在 HTTPS 上的侦听器无法正常工作,因为您没有将其指向与 HTTP 侦听器相同的目标。

    将您的 HTTPS 侦听器的实例协议设置为 HTTP 并将其端口设置为端口 你的 API 监听 - 31315

    我尝试编辑此负载均衡器对应的安全组

    这也需要完成。负载均衡器的安全组必须允许 443,并且负载均衡器必须正在侦听 443。您看起来唯一缺少的部分是将负载均衡器的侦听器指向实例上正确的目标端口。

    这可能是 API 本身的问题,即我是否必须向 API 添加任何额外的配置?

    我不这么认为。 API 可能不关心负载均衡器是否监听 htts - 重要的是流量被发送到 API 正在监听的端口。

    【讨论】:

    • 非常感谢,成功了!
    • 我还有一个问题 - 当我将原始域输入浏览器 (my-chat-api.com) 时,它默认为 http,而不是 https。我怎样才能让它默认转到https?
    • 如果没有指定协议,浏览器会“猜测”http。 blog.chromium.org/2021/03/… 解释了 Chrome 最近如何开始默认使用 http 后备迁移到 https。但是要覆盖所有浏览器,您需要将 http 连接重定向到 https。最简单的方法是使用 ALB,而不是 ELB,然后您可以在 ALB 层设置一个重定向到 https 的 http 侦听器。 aws.amazon.com/premiumsupport/knowledge-center/… 经典的ELB,你必须在实例端做,所以ALB更好。
    猜你喜欢
    • 2016-05-12
    • 2014-08-27
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    • 2015-03-18
    • 2017-02-19
    • 1970-01-01
    • 2015-11-13
    相关资源
    最近更新 更多