将亚马逊的CloudFront指向A记录而不是CNAME

git*_*oob 16 dns amazon amazon-web-services amazon-cloudfront

我找到了将我的域名CNAME指向亚马逊的CloudFront服务的说明,但理想情况下我想指出根名称(记录名称).例如,foo.com而不是www.foo.com.这可能吗?

小智 19

您可以使用Route 53服务将区域顶点(即example.com)指向AWS上的CloudFront分配.只需登录您的CloudFront分配并将备用域名(CNAME)设置为您的域(例如example.com和/或www.example.com).然后在Route 53中,为您的域创建一个托管区域,然后选择一个别名记录,选择CloudFront分配作为目标.您还可以为任何子域创建第二个别名记录,例如www.example.com.注意:您还需要更改域名注册商的名称服务器.

从Route 53常见问题解答:

问:我可以在我的Amazon CloudFront分配中指向我的区域顶点(example.com与www.example.com)吗?

是.Amazon Route 53提供了一种特殊类型的记录,称为"别名"记录,可让您将区域顶点(example.com)DNS名称映射到Amazon CloudFront分配(例如,d123.cloudfront.net).与Amazon CloudFront端点关联的IP地址会根据最终用户的位置(为了将最终用户定向到最近的CloudFront边缘位置)而有所不同,并且可能会因扩展,缩小或软件更新而随时更改.路由53响应具有分发的IP地址的别名记录的每个请求.对于映射到CloudFront分配的别名记录的查询,路由53不收费.这些查询在Amazon Route 53使用情况报告中列为"Intra-AWS-DNS-Queries".

有关更多信息,请参阅AWSs文档:

  • 需要注意的一点是,您必须将您的顶点域添加到CloudFront配置中的"CNAMES"列表(即使它不是CNAME),否则它将不会在Route 53的下拉列表中显示为别名选项我被困在那一点上. (3认同)
  • 亚马逊应该修复他们的用户界面,因为尽管您可以使用 A 记录,但该字段称为备用 Cnames,并且帮助没有明确说明您可以使用别名。 (2认同)
  • 我们可以不使用Amazon Route 53吗?我现有的DNS提供商支持APEX记录. (2认同)

Abe*_*bel 5

指向www.example.com仍然可以使用A记录完成,但是您必须将其指向IP地址,然后它与"www"或前面的任何其他内容无关.

CNAME和A-Records之间的区别仅在于CNAME指向另一个名称,而该名称必须由DNS查找,而A记录只需要一次查找并直接指向IP地址.

也就是说,您很快就会明白为什么在这种类型的云托管中使用A记录可能是一个坏主意或不可能.亚马逊使用多个IP地址,您不会预先了解这些IP地址.DNS更改很慢.因此,除非您具有不会更改的特定IP地址,否则使用A记录将无法正常工作.查找具有固定IP地址的托管服务,您可以使用A记录.

在性能或可达性方面,CNAME和A记录之间仅存在微小差异.

编辑:
正如SLaks指出的那样,最好坚持使用"旧规则"来为您的根域名使用A-Record.但是你会发现有时你不会有选择,这取决于你的托管服务提供商允许你做什么.幸运的是,现在,几乎没有任何东西可以实际上阻止你这样做(使用CNAME).

  • DNS RFC(RFC1033)要求"区域顶点"(有时称为"根域"或"裸域")为"A记录". (5认同)
  • 错误.CNAME不应该用于根域,因为一些较旧的电子邮件服务器无法处理它们.实际上,某些注册商不允许您为域根创建CNAME. (4认同)
  • @Abel nl.wikipedia.org不是根域,它是一个子域,你可以将CNAMES用于没有问题的人.但根域上的CNAME,即.不允许使用wikipedia.org. (4认同)