当我尝试将 CNAME 别名添加到单个 Amazon CloudFront 分配或多个 CloudFront 分配时,收到类似以下内容的错误:

Status Code: 409; Error Code: CNAMEAlreadyExists; Request ID:a123456b-c78d-90e1-23f4-gh5i67890jkl

您不能对多个 CloudFront 分配使用相同的 CNAME 别名。当您尝试添加的 CNAME 别名已与另一个 CloudFront 分配关联时,会发生 CNAMEAlreadyExists 错误。

CNAMEAlreadyExists

如果收到的错误代码是“CNAMEAlreadyExists”,请按照以下步骤解决此问题:

首先,指示您的 DNS 提供商以如下格式创建 TXT 记录:

<CNAME alias> TXT <CloudFront distribution name>

例如,如果要为名为 d123.cloudfront.net 的 CloudFront 分配添加 CNAME 别名 example.com,请指示您的 DNS 提供商创建以下 TXT 记录:

example.com TXT d123.cloudfront.net

注意:DNS 提供商创建的 CNAME 记录最多可能需要五个工作日才能传播到整个 DNS。

创建记录后,请联系 AWS Support 并要求 AWS 验证 DNS 域名的所有权,以确保您可以将 CNAME 别名添加到您的分配中。在联系 AWS Support 时,请务必提供 CNAMEAlreadyExists 错误消息的副本。

注意:AWS Support 不能将同一个 CNAME 关联到多个分配。他们只能帮助您在两个分配之间切换 CNAME 或从分配中删除 CNAME。

如果您的 DNS 提供商不允许存在相同的 TXT 和 CNAME 记录,请考虑在 TXT 记录中的 CNAME 别名前添加下划线。例如,以下 TXT 和 CNAME 记录是相同的:

cname.example.com.   900   IN   TXT     "dexample123456.cloudfront.net"
cname.example.com.   900   IN   CNAME   "dexample123456.cloudfront.net"

以下 TXT 和 CNAME 记录不同,因为第一个条目前有一个下划线:

_cname.example.com.   900   IN   TXT     "dexample123456.cloudfront.net"
cname.example.com.   900   IN   CNAME   "dexample123456.cloudfront.net"

CNAMEAlreadyExists:您提供的一个或多个 CNAME 已与 DNS 级别的其他分配相关联

如果收到的 CNAMEAlreadyExists 响应包含消息“One or more of the CNAMEs you provided are already associated with a different distribution at DNS level”,则必须验证您没有指向另一个 CloudFront 分配的有效 DNS 记录。

从分配中删除 CNAME 但保留 DNS 记录时,API 调用将失败并保留 CNAME 与此分配的关联,以免其他用户在此 DNS 被删除或禁用前获得此 CNAME。


此页内容对您是否有帮助? |

返回 AWS Support 知识中心

需要帮助? 请访问 AWS 支持中心

发布时间:2016 年 4 月 25 日

更新时间:2018 年 9 月 10 日