使用 Amazon EC2 弹性负载均衡器进行 DNS

使用 Amazon EC2 弹性负载均衡器进行 DNS

有人告诉我,我无法将域 (example.com) 的根设为 CNAME - 我必须指定一个 IP。

鉴于您不能使用 IP 地址指向您的弹性负载均衡器,最好的做法是什么?

目前我这样做:

example.com - 第一台服务器的弹性 IP 记录 - 重定向到 www.example.com

www.example.com CNAME 到负载均衡器的主机名

如果第一台服务器停止运行,重定向将失败。

有没有更好的方法来解决这个问题?

答案1

您的方法可能是最明智的。

您可以做的是循环 DNS 您的根记录,只需为 example.com 添加多个 A 记录即可。域并在所有服务器上复制重定向代码。这样它就不会那么依赖于第一个服务器。

如果您的重定向是 301,那么几乎所有用户都会缓存 301,因此下次他们通过 example.com 访问该网站时,他们的浏览器应该(如果他们不清除缓存)自动重定向到 www.example.com,甚至不检查服务器,然后直接进入您的负载均衡器

答案2

看起来亚马逊现在已经针对此问题实施了解决方案。

“Amazon Route 53 已与 Amazon EC2 的 Elastic Load Balancing 集成,以便您轻松地将根域或“区域顶点”(例如 mydomain.com,不带‘www’)直接映射到您的负载均衡器。”

http://aws.typepad.com/aws/2011/05/elastic-load-balancing-ipv6-zone-apex-support-additional-security.html

答案3

我发现大多数域名注册商都提供带域名重定向 (HTTP 301) 的基本 DNS 工具,因此您应该能够将根条目(例如 example.com)设置为 www.example.com 或类似网站的重定向。这一切都假设您同意重定向,并且不需要您的网站响应 example.com。这将使您不必像亚马逊那样为另一个弹性 IP 付费。

相关内容