创建自定义域 returns 错误 409:CNAMEAlreadyExists

Create custom domain returns error 409: CNAMEAlreadyExists

我正在尝试在 API 网关 中创建一个 自定义域作为 边缘优化 并使用 ACM 证书 我们存储。 但是它 returns 出现以下错误:

One or more of the CNAMEs you provided are already associated with a different resource. (Service: AmazonCloudFront; Status Code: 409; Error Code: CNAMEAlreadyExists; Request ID: 5299fd33-fb58-42a1-8836-33517969365b; Proxy: null)

我检查了托管区域中是否有任何与使用它相关或同名的记录,但没有任何记录。

另一方面,我也检查了我的 CloudFront 中是否有同名的 CNAME,但我没有配置 CNAME 的任何分配。 (也许它们是 AWS 自己的 CloudFronts)。

我对我想使用的名称进行了挖掘,结果如下:

;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 60575
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;api.xxx.xxx.xx.com. IN A

;; AUTHORITY SECTION:
xxx.xxx.xx.com. 900 IN  SOA ns-11X5.awsdns-16.org. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400

;; Query time: 145 msec
;; SERVER: 192.168.238.254#53(192.168.238.254)
;; WHEN: Tue Sep 08 09:46:18 CEST 2020
;; MSG SIZE  rcvd: 145

我仍在调查,但我在帐户中找不到与我尝试创建的名称相关的任何内容。我能做什么?

此错误归因于您的域到 CloudFront 分配的映射。

请注意,如果您有针对 CloudFront 的通配符别名(例如 *.example.com),这也将涵盖您尝试创建的任何子域。同时尝试对您的目标域执行 DIG 以确保它尚未解析为 CloudFront 分配。

它可能是在其他人的帐户中创建的,尽管这种情况不太可能发生。

如果您确定上述两种情况都没有发生,您可以联系 AWS 支持。通过使用 How do I resolve the error CNAMEAlreadyExists when setting up a CNAME alias for my Amazon CloudFront distribution? 文章中的方法,他们应该能够帮助您识别或迁移到您的帐户(如果有人使用了它)。

我遇到了同样的问题,在 this guide 之后我发现,在另一个使用相同 CNAME 的帐户中有一个活跃的分发。经过更多研究后,我发现我的前任创建了一个使用相同 CNAME 的 API 网关。 API 网关在不同的账户中创建“影子”CloudFront 分配。删除 API 网关后,可以将 CNAME 与我的分配相关联。