Sha*_*zam 5 amazon-web-services amazon-cloudfront amazon-elb
我有一个带有 HTTPS 证书和一些侦听器规则的应用程序 LoadBalancer,在前面,我部署了一个 CloudFront,它将与负载均衡器通信并为 Web 中的内容提供服务,当 CF 中的源协议是 HTTP 时,源与源之间的通信CloudFront 发生了,但是当源协议在 CF 中配置为 HTTPS 时,我收到 502 bad gateway 错误。
Tri*_*top 11
要使用 HTTPS 从 CloudFront 到 ALB 的连接,同时仍使用 ALB 的 DNS 名称作为源,请在 CloudFront 的行为设置中设置自定义缓存策略。
在自定义缓存策略的设置中,指定要包含在缓存键中的主机标头。参考下图:
这样,ALB 将通过引用 Host 标头中定义的主机名(而不是 ALB DNS 名称中的主机名)来知道使用正确的 SSL 证书。(假设ALB监听器中的SSL证书有效并且与用于访问CloudFront的域名匹配)
引用自: https: //docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/http-502-bad-gateway.html
证书中的域名之一必须与以下值之一或全部匹配:
- 您为分配中适用源的源域名指定的值。
- 如果您将 CloudFront 配置为将主机标头转发到源,则为主机标头的值。
ALB 的 DNS 名称为:openn-dev-alb4-1497166043.us-east-1.elb.amazonaws.com
您不能将该域与 HTTPS 一起使用。您的 SSL 证书必须是为您自己的域设置的,而不是 AWS 提供的域。原因是您只能拥有您(或您的公司)完全控制的域的有效公共 SSL 证书,而不能拥有 AWS 默认 ALB 域的有效公共 SSL 证书。
| 归档时间: |
|
| 查看次数: |
2458 次 |
| 最近记录: |