amazon-web-services - 对于没有 WWW 且不使用 CNAME 的域,如何使用 Route 35 将 HTTP 和 HTTPS 路由到 CloudFront?
问题描述
让我描述一下我的情况,我有:
- EC2 实例(Wordpress)
- CloudFront 分配使用httpS为 EC2 实例提供服务并将http重定向到httpS。
- 将www .example.com 指向 CloudFront 分配的
CNAME
AWS Route 53 记录。 A
将根 mydomain 指向 EC2 IP的路由 53 记录。- 根 mydomain 中的许多其他记录(MX、NS、SOA、TXT)。
怎么了:
✅ 请求https :// www .example.com CloudFront 使用 AWS 签名证书提供内容。
✅ 请求http://www.example.com CloudFront重定向到httpS://www.example.com 。
✅ 请求http://example.com(不带 www)我的EC2重定向到httpS://www.example.com
❌请求httpS://example.com(不带www),返回错误导致EC2不服务httpS
我该怎么做才能避免这个错误。?
我无法CNAME
向根 mydomain 添加记录,因为CNAME
无法与其他记录(MX、NS、SOA、TXT)共存
我无法将A
记录路由到 CloudFront,因为我没有找到IP
CloudFront 分布,并且可能没有IP
地址。
解决方案
对于naked
域 ( example.com
),请使用带有类型的 Route 53 记录集A
并启用该Alias
选项。然后将 CloudFront 分配指定为Alias Target
. 从逻辑上讲,这与设置 CNAME 非常相似。
推荐阅读
- javascript - 如何将组件的值传递给其父级?
- react-native - 滚动 react-native 时如何隐藏/显示粘性标题
- python - Fernet Cryptography 解密给出无效的令牌
- python - python joblib返回`TypeError:无法使用相同的代码腌制'weakref'对象,但输入数据不同
- java - 错误:java.lang.ClassCastException:java.lang.String 无法转换为 com.example.animeguide.AnimeListOne
- c++ - 在 catkin_make / Cmake 中链接 MKL
- elasticsearch - 对所需的弹性搜索查询规则发出警报
- javascript - 如何在不加载新组件的情况下使用 Vue Router 进行滚动导航?
- android - Kotlin 中如何使用 Picasso 将 URL 转换为位图?
- sql-server - 在复杂查询中查找相关的 SELECT 子句