***域上的 Cloudfront dist
Posted
技术标签:
【中文标题】***域上的 Cloudfront dist【英文标题】:Cloudfront dist on top level domain 【发布时间】:2010-11-23 19:34:05 【问题描述】:是否可以将像 http://example.com 这样的***域指向亚马逊云端分发?
我知道使用 CNAME 是可能的,但据我所知,我需要在 DNS 设置中为***域设置 A 名记录。
【问题讨论】:
【参考方案1】:问。我可以将我的区域顶点(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 FAQs
【讨论】:
如果您不是从Route 53
购买的域,而是从其他地方购买的,此方法将有效。就我而言,我是从 google 域购买的域。只需在您的域设置中添加 Route 53 的名称服务器作为名称服务器。然后从路由 53 数据库创建此答案中提到的 ALIAS 记录。【参考方案2】:
正如@dgeske 所解释的,这是可以做到的。
就我而言,我没有从Route 53
购买域名,因此必须进行额外的配置。
场景:您有以下情况
-
云端分发
二级域 (example.com)不是从 Amazon Route 53 购买的。在我的例子中是 Google 域,但这个想法也适用于其他提供商。
您希望将二级域 (example.com) 指向云端分发(而不是像 www.example.com 这样的子域)
你的命名有点不准确。 example.com 不是 TLD(***域),它是所谓的二级域。请参见下图。
执行此操作的步骤。
-
在 Route 53 中创建托管区域。
Route 53 现在将为您提供一个名称服务器列表,您必须在您购买域的提供商的域设置面板中设置这些名称服务器(在我的例子中是 Google 域)。
返回 Route 53 仪表板,并为此托管区域创建 A - Alias 记录(使用创建记录集选项)。请记住选择“是”单选按钮。 确保将子域部分留空(因为我们只对创建二级域的记录感兴趣)。
现在您应该可以通过http://example.com
访问您的云端发行版。
根据您的 DNS 服务器,更新记录可能需要一段时间。
您可以将系统配置为使用公共 DNS 服务器,例如 8.8.8.8
,以验证您是否能够使用 URL 访问云端分发。为此,我使用了 firefox 的 DNS over https
功能。这使得 Firefox 使用 cloudflare(not 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 服务器来解析名称)
您可能还会收到Access Denied
错误,在这种情况下,您必须为您的云端分发配置默认根对象。这样当您访问http://example.com
时,文件http://example.com/index.html
就会提供给您(假设您将index.html 指定为默认根对象)。 这个错误与我们上面做的步骤无关,即使你直接使用亚马逊提供的你的云端分发的 URL,你仍然会得到这个错误(例如,当你去http://abcd.cloudfront.net directly
,而不是去http://example.com
)。
【讨论】:
【参考方案3】:我的理解是您不能为 Cloudfront 创建 A 记录。
亚马逊为您提供了一个域名,例如 YourName.cloudfront.net。他们需要在后台管理该域名的 DNS 解析,以便将每个请求路由到最近的边缘服务器。
【讨论】:
【参考方案4】:你可以在云端添加别名 然后选择 A 或 AAAA(如果在云端启用了 ipv6)
【讨论】:
以上是关于***域上的 Cloudfront dist的主要内容,如果未能解决你的问题,请参考以下文章
CloudFront + EC2 + Apache + PHP
.htaccess 301 将旧域上的所有页面重定向到新域上的单个页面