我有一个 godaddy 域名:example.com
我有一个指向 ec2 实例的 ec2 负载均衡器。
我希望 example.com 指向我的负载平衡实例。
我首先为我的 elb DNS 添加了 www cname 记录。然后我将 example.com 转发到 www.example.com
godaddy 上的 A Name 记录里应该填什么?
答案1
你不能。
ELB 提供一个或多个 IP 地址,隐藏在您使用 www 记录的 CNAME 后面,并且这些地址不是静态的,因此您无法在域的顶部(“顶点”)创建 A 记录并指向这些地址……此外,域顶点的 CNAME 不是有效的 DNS 配置。因此没有直接的方法可以做到这一点。
您可以使用 Go Daddy 的网站转发功能将 example.com 请求重定向到 www.example.com,这将导致浏览器将其地址栏值从 example.com 更改为 www.example.com,然后将流量发送到 ELB(通过 www CNAME)...或者您可以将 DNS 从 Go Daddy 移动到亚马逊的 Route 53 服务,该服务具有另一个功能,其操作方式与 CNAME 类似,但实现方式不同,与RFC-1912.他们称这些ALIAS
为记录。
Route 53 中的 Alias 记录指向内部的Route 53 中的配置允许该服务查找并返回别名记录指向的服务的适当 A 记录。
http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingAliasRRSets.html
答案2
除了接受的答案之外,另一个选择是按照以下步骤在 AWS Route 53 中创建 AWS 托管区域:
登录 AWS 管理控制台并打开 Amazon Route 53 控制台https://console.aws.amazon.com/route53/。
选择创建托管区域。
- 您需要确保您的托管区域指向您的负载均衡器。为此,请创建 A 记录并选择别名并从返回的下拉列表中选择您的负载均衡器
- 继续创建 CNAME 记录并将其指向您在步骤 3 中创建的记录
有关创建托管区域的更多信息:http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/CreatingHostedZone.html
每个托管区域都会为您创建名称服务器,因此一旦创建,请获取提供的名称服务器并更新 godaddy 以使用这些名称服务器。
您的 GoDaddy 域现在将指向 AWS 托管区域,而该区域又指向您的负载均衡器。
答案3
您还可以删除默认的 (@) A 记录(如果有),大多数浏览器都会尝试使用 www。这对我来说很有效。
答案4
我刚刚尝试使用 godaddy DNS 将 @ 记录指向 CNAME。但似乎无法解决问题。按照上述指南操作即可。
将您的域名指向 route53,然后选择所需的 A 记录并通过别名传递记录。您应该能够获得成功。