【问题标题】:CloudFront distribution not showing as Route53 alias targetCloudFront 分配未显示为 Route53 别名目标
【发布时间】:2015-08-17 04:19:45
【问题描述】:

我正在尝试添加指向我的云端分发的路由 53 记录集。但是,当我在路由 53 中选择“创建记录集”并在后续面板中单击别名目标时,未列出云前端分布。我得到的只是“没有可用的目标”。我的发行版已创建并已启用(并且正在运行)。我在我的发行版中添加了一个 CName,其域名与我在 Route53 中设置的域名相同,但它仍然没有显示。

如何让我的分布显示在 Alias Target 字段中,以便我可以将 Route53 ‘a’ 记录指向它?

谢谢

【问题讨论】:

  • 控制台在填充该框方面是出了名的迟钝。点击它,点击远离它,再次点击它似乎这可能是正确的魔法咒语。您是否等到您的 Cloudfront 分发状态显示“已部署”?
  • This article 对此进行了描述:备用域名 (CNAME) 不应为空,以便在 A 记录别名的下拉列表中可见。
  • @Michael-sqlbot 我还必须刷新 Route53 页面才能看到它。
  • 我将我的云端安全策略更改为 TLSv1.1_2016,它为我解决了这个问题

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


【解决方案1】:

结合几个正确但不完整的答案:

  1. 仅支持 A 记录和 AAAA。不是CNAME 记录。
  2. Route53“别名目标”框与 CloudFront 分配的“备用域名”字段匹配。如果您要为 something.example.com 创建新记录集,您应该已经将其中一个分配的备用域名设置为 something.example.com
  3. Route53 管理控制台可能会很慢,并且可能无法立即找到您的分发 - 等到分发状态为 Deployed

【讨论】:

  • AAAA 也可以,实际上是 AWS 文档推荐的(第 7 步):docs.aws.amazon.com/Route53/latest/DeveloperGuide/…
  • 此外,如果 CloudFront 分配的状态为 In Progress,则不会出现。等到Deployed
  • 令人惊讶的是,CF 分发设置文档中没有更好地记录这一点。
  • @Mehran 那不正确。 AAAA 记录用于 IPv6 IP。
【解决方案2】:

确保您已为您的分配设置一个或多个备用域名,否则它不会列在 Route53 别名的目标组合中。

据我了解,这与在您的 Apache 的 VirtualHost 上配置 ServerAlias 相同(或 Nginx 的对应方等) .没有它,当它到达那里时,您的请求将不会被识别为发往该发行版。

来自 AWS 的文档:

如果您使用 CloudFront 分发您的内容,您可以使用 Amazon Route 53 将查询路由到您的 CloudFront 分发。您的 Amazon Route 53 托管区域的名称(例如 example.com)必须与 CloudFront 分配中的备用域名匹配。您无法将查询路由到您的分配的 CloudFront 域名(例如 d111111abcdef8.cloudfront.net)。以下过程假设您已经注册了适用的域名。

【讨论】:

【解决方案3】:

确保它是 A 记录而不是 CNAME 记录(很奇怪,我知道)。我发现隐藏在此处的文档中:

http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-values-alias.html

【讨论】:

  • 这是正确的答案
  • 虽然正确的 AWS 至少应该修正一下措辞。在分发设置中,它要求指定 CNAME,但是必须将路由 53 设置为 A 记录才能工作。
  • 谢谢安德鲁。这非常令人困惑。
【解决方案4】:

如果您的分配未显示为别名目标,您始终可以手动将 d123.cloudfront.net(将 d123.cloudfront.net 替换为您的分配的实际 DNS 名称)复制并粘贴到目标中。这将允许您创建别名记录。

【讨论】:

  • Route53 管理控制台目前不允许您执行此操作。您可以改为使用 CNAME,但它不会是 AWS 意义上的“别名”。
  • jelder,它一直有效,并且每次都对我有效。
  • 这行得通,只要您将 CloudFront 分配 URL 粘贴到该框中,AWS 就会将其拾取并保存。谢谢!
【解决方案5】:

TL/DR

将您在 Cloudfront Distribution 的来源中的 Origin ID 设置为与您尝试为其创建别名的域名相同

更多详情

我为此苦苦挣扎了一段时间。

最后,我比较了一个 确实 出现在 Route 53 中的有效 CloudFront 分布和一个没有出现的 CloudFront 分布。

我注意到,在分发的来源中指定的 Origin Id 不是我网站的域名

此选项位于:CloudFront Distributions > [Id of distribution] > Origins and Origin Groups > Origins

我只列出了一个来源,其中路径是公共 s3 存储桶的名称。该条目还有一个Origin ID 字段。当我将其更新为我的域名时(不带 www 前缀),例如testdomain.com 然后我可以在 53 号路由别名下拉列表中看到这个云前分布。

【讨论】:

    【解决方案6】:

    您必须填写 Alternate Domain Names (CNAMEs) 字段,例如使用

    www.my_site.com  
    *.my_site.com
    

    对于SSL Certificate 字段选择

    Custom SSL Certificate (example.com)
    

    为此,您必须使用 ACM 创建和验证您的域,ACM 必须在弗吉尼亚州创建。

    之后,您将能够在 R53 中看到 Cloudfront。

    【讨论】:

    • 谢谢,有帮助!
    【解决方案7】:

    确保您的 CloudFront 分配包含您的站点名称 (example.com )! 我遇到了同样的问题,花了一个多小时试图解决这个问题......

    【讨论】:

    • 这对我有用。我必须将我的域添加到备用域名。谢谢!
    【解决方案8】:

    诀窍是在域之前输入 www,因为 CloudFront 与带有 www 或您使用的任何子域的备用域名匹配。输入 www 或您的子域,它会找到分布。

    【讨论】:

    • ? 我们开始解决一些错误 :)
    • 但是您为什么能够为云端选择区域? cloudfront 总是在 us-east-1
    【解决方案9】:

    我的云端分发状态属性需要很长时间才能读取已部署。

    但是,在我的地址栏中输入云端域 url 后,我进入了我的网站,即云端域 url 是实时的。

    不耐烦,我复制了这个域名地址并粘贴到别名目标字段中。

    成功了!

    【讨论】:

    • 添加通配符子域时这对我有用。
    猜你喜欢
    • 2014-11-30
    • 2020-04-11
    • 2020-09-24
    • 2019-05-22
    • 1970-01-01
    • 2019-02-28
    • 1970-01-01
    • 1970-01-01
    • 2020-07-03
    相关资源
    最近更新 更多