5

是否可以将像http://example.com这样的顶级域指向亚马逊云端分发?

我知道 CNAME 是可能的,但据我所知,我需要在 DNS 设置中为顶级域设置 A 名记录。

4

4 回答 4

3

正如@dgeske 所解释的,这是可以做到的。就我而言,我没有从 购买域Route 53,因此必须进行额外配置。

场景:你有以下

  1. 云前分布
  2. 不是从 Amazon Route 53 购买的二级域 (example.com) 。在我的例子中是 Google 域,但这个想法也适用于其他提供商。
  3. 您希望将二级域 (example.com) 指向云端分布(而不是像www.example.com这样的子域)

你的命名有点不准确。example.com 不是 TLD(顶级域),它是所谓的二级域。请参见下图。 URL 的组成部分

执行此操作的步骤。

  1. 在 Route 53 中创建一个托管区域。在路由 53 中创建托管区域
  2. Route 53 现在将为您提供一个名称服务器列表,您必须在您购买域的提供商的域设置面板中设置这些名称服务器(在我的例子中是 Google 域)。从谷歌域仪表板更改名称服务器
  3. 返回到 Route 53 仪表板,并为此托管区域创建一个 A - Alias 记录(使用创建记录集选项)。请记住选择“是”单选按钮。A-别名记录集确保将子域部分留空(因为我们只对为二级域创建记录感兴趣)。将子域部分留空

现在您应该能够在http://example.com. 根据您的 DNS 服务器,更新记录可能需要一段时间。
您可以将系统配置为使用公共 DNS 服务器,例如8.8.8.8验证您是否能够使用 URL 访问云端分发。我为此使用了Firefox的DNS over https功能。这使得 Firefox 使用 cloudflare(不是cloudfront)的 DNS 服务器。您还可以使用 dig 命令行实用程序dig @8.8.8.8 example.com(我的域是fightcoronapune.com,因此,dig @8.8.8.8 fightcoronapune.com)(告诉 dig 使用 8.8.8.8 DNS 服务器来解析名称) 通过 https 的火狐 DNS

您可能还会遇到Access Denied错误,在这种情况下,您必须为您的云端分发配置默认根对象。这样当您访问http://example.com该文件时,该文件http://example.com/index.html就会提供给您(假设您将 index.html 指定为默认根对象)。这个错误与我们上面所做的步骤无关,即使你直接使用亚马逊提供的你的云端分发的 URL,你仍然会得到这个错误(例如,当你去http://abcd.cloudfront.net directly而不是去的时候http://example.com)。

于 2020-04-04T02:40:37.080 回答
3

问:我能否将我的区域顶点(example.com 与 www.example.com)指向我的 Amazon CloudFront 分配?

是的。Amazon Route 53 提供了一种称为“别名”记录的特殊类型的记录,可让您将区域顶点 (example.com) DNS 名称映射到您的 Amazon CloudFront 分配(例如,d123.cloudfront.net)。与 Amazon CloudFront 终端节点关联的 IP 地址因最终用户的位置而异(以便将最终用户引导到最近的 CloudFront 边缘站点),并且可能因扩大、缩小或软件更新而随时更改。Route 53 使用分配的 IP 地址响应对别名记录的每个请求。Route 53 不对映射到 CloudFront 分配的别名记录的查询收费。这些查询在 Amazon Route 53 使用报告中列为“Intra-AWS-DNS-Queries”。

来源:Amazon Route 53 常见问题

于 2016-06-16T15:50:55.990 回答
0

我的理解是您不能为 Cloudfront 创建 A 记录。

亚马逊为您提供了一个域名,例如 YourName.cloudfront.net。他们需要在后台管理该域名的 DNS 解析,以便将每个请求路由到最近的边缘服务器。

于 2009-08-28T17:31:58.033 回答
-1

如果您在云端添加别名,则可以选择 A 或 AAAA(如果在云端启用了 IPv6)

于 2017-07-15T14:49:37.830 回答