正如您所知,亚马逊 EC2 实例获得如下地址:
ec2-72-44-40-153.z-2.compute-1.amazonaws.com
如果我有域名 example.com,有什么方法可以让 bob.example.com 或最好是 example.com/bob 重定向到
ec2-72-44-40-153.z-2.compute-1.amazonaws.com
??
谢谢!!
答案1
如果您只想重定向域名,您可以在 DNS 中创建 CNAME 记录:
bob.example.com IN CNAME ec2-72-44-40-153.z-2.compute-1.amazonaws.com
这会将所有尝试连接到 bob.example.com 的用户重定向到您的 EC3 站点。
如果您希望 example.com/bob 重定向,则需要配置一些URL 重写规则在 example.com 上运行的网络服务器上。
答案2
亚马逊提供了一个完全符合您要求的解决方案,并且比 CNAME 记录更灵活。您可以请求所谓的弹性 IP来自 EC2 的地址。
此 IP 地址是静态的,因此您可以在 DNS 中创建指向该 IP 地址的 A 记录,但该记录指向您选择的 EC2 实例。如下所示的常规 A 记录即可:
bob.example.com A 123.123.123.123
如果您的服务器出现故障,并且您启动了另一个实例(该实例具有不同的主机名),只需将弹性 IP 重新分配给新实例即可。一两分钟后,新实例即可在该 IP 后面使用。这意味着延迟将比您因 DNS 更改而遇到的延迟少得多。
只要使用弹性 IP,它们就是免费的。当您不是使用 IP。这样做是为了防止有限资源的滥用。
您可以通过 API 工具或 ElasticFox 等 GUI 请求和分配弹性 IP。阅读亚马逊的指南会让事情变得更加清晰。