【问题标题】:CloudFront fails to communicate with ELB 502 bad gatewayCloudFront 无法与 ELB 502 错误网关通信
【发布时间】:2022-01-07 23:23:40
【问题描述】:

我有一个带有 HTTPS 证书和一些侦听器规则的 Application LoadBalancer,在前面,我部署了一个 CloudFront,它将与负载均衡器通信并提供 Web 中的内容,当 CF 中的源协议是 HTTP 时,两者之间的通信源和 CloudFront 发生,但是当源协议在 CF 中配置为 HTTPS 时,我收到 502 bad gateway 错误。

【问题讨论】:

  • 当您通过 ALB 使用 HTTP 访问您的网站时,它是否正常工作?
  • 是的,当我使用 HTTPS 时发生 502 bad gateway
  • 那么您究竟是如何设置 SSL 证书、https 侦听器、自定义域的?遗憾的是,您的问题缺少任何相关细节。
  • - 我的公司向我提供了在 ACM 中生成的 SSL 证书,- 我已将其附加到侦听器中的 ALB 并添加了将请求转发到 TargateGroup 的规则。 - ALB 的 DNS 名称是:openn-dev-alb4-1497166043.us-east-1.elb.amazonaws.com - 然后我创建了 CloudFront 并将这个 DNS 指向它的来源,并设置协议 HTTPS 我想要什么是 web 请求 ==> cloudFront(重定向到 ALB 源)==> ALB ==> targate 组 ==> 容器

标签: amazon-web-services amazon-cloudfront amazon-elb


【解决方案1】:

ALB 的 DNS 名称为:openn-dev-alb4-1497166043.us-east-1.elb.amazonaws.com

您不能通过 HTTPS 使用该域。您的 SSL 证书必须设置为您的自己的域,而不是 AWS 提供的域。原因是您只能为您(或您的公司)完全控制的域拥有有效的公共 SSL 证书,而不是 AWS 默认 ALB 域。

【讨论】:

  • 感谢您的回答,那么我该如何从 CF 与 ALB 通信?在原始部分,我只能给出 AWS 文档建议的 ALB DNS 名称
  • @Shazam 您可以提供自己的域。如果您没有,则默认 AWS 域只能使用 http。
  • 比如用我自己的域名为ALB DNS创建一个Route53条目,并在CloudFront源中配置自己的域名,这样就可以解决问题了?
  • @Shazam 您必须购买自己的域名。仅在 R53 中的一个条目是不够的。但是,如果您的公司生成 SSL,它可能已经有一些域?你必须检查它。
猜你喜欢
  • 2018-04-07
  • 1970-01-01
  • 1970-01-01
  • 2020-12-28
  • 2018-12-29
  • 2014-12-12
  • 2016-01-24
  • 2017-07-07
  • 2019-06-07
相关资源
最近更新 更多