amazon-web-services - SSL 证书 + Cloudfront + EC2 设置 - 重定向过多
问题描述
我会尽量准确地处理我的问题和问题!
- 我有一个由 Amazon Certificate Manager 生成的证书
- 我有一个带有证书的云端,它来自 EC2 公共 DNS
- 连接的 EC2 有 Nginx 监听 80 端口
问题是我收到了太多重定向...
无休止地从 xxx.com 重定向到 www.xxx.com/?sid=xxxxxxxx..
我已将路由 53 设置为指向 EC2 ip,并且应用程序可以正常工作而没有问题,因此网络服务器没有问题..
如果我想让 https 工作.. 因为我没有 ELB,我想我可以将 Cloudfront 上的 HTTPS 端口设置为 80,所以所有流量都流向 Nginx 端口 80,但它不起作用,服务器没有响应。
所以我的问题是。
有谁知道为什么重定向太多?或在哪里看?
您是否看到来自 ACM 的证书指向 Cloudfront 连接到没有 ELB 的 EC2 的任何基本架构问题?
如果云端将 http 和 https 流量发送到 ec2 端口 80,我是否不正确,它应该可以工作吗?
解决方案
您是否已将 CloudFront 上的 HOST 标头列入白名单并尝试过?重定向由 EC2 完成,由于您在源域名配置下使用 EC2 DNS 名称,CF 将添加 HOST 标头作为 EC2 DNS 名称,无论您重定向多少次,客户端都会连接回 CF 和 CF 使用HOST 标头中的相同 DNS 名称并连接回源。
请尝试将 HOST 标头列入白名单并清除缓存,然后再次测试,因为 CloudFront 也缓存 3xx。
如果云端将 http 和 https 流量发送到 ec2 端口 80,我是否不正确,它应该可以工作吗?- 您不能在同一端口上同时使用 HTTP 和 HTTPS,CloudFront 上的源协议策略定义了您希望 CloudFront 如何连接到您的 EC2(在 HTTP 或 HTTPS 上)
推荐阅读
- azure-cosmosdb - Cosmos DB 查询键值对
- python - 如何在元组中找到列表的唯一标识符?
- flutter - 在 Dart 中,如何复制/克隆 2D 列表?
- reactjs - 反应路由器,如何在 url 更改时刷新页面?
- graphql - Strapi 错误错误:无法使用来自另一个模块或领域的 GraphQLObjectType“查询”
- c# - 如何在 C# 中使用 Azure Kinect 身体跟踪 SDK 1.1.0?
- nginx - 别名域返回 400 错误与 ssl_handshake 有关
- huggingface-transformers - 如何基于transformer计算单词相似度?
- python - 该模型在 Tensorflow 到 CoreML 模型中没有有效的图像类型输入特征
- mysql - mysql - vs代码中缺少“运行SQL”命令