向AWS EC2公共域名添加CNAME

3

我有一个测试应用程序正在运行

http://ec2-34-215-196-193.us-west-2.compute.amazonaws.com/

(这是一个测试应用程序,不会长时间使用。当我尝试像下面的截图一样添加CNAME时 img
  • 由于DNS系统的原因,会添加.
  • 然而,我的应用似乎只能通过us-west-2.compute.amazonaws.comus-west-2.compute.amazonaws.com.访问
  • 我可以使其解析为其中任意一个。

但是添加任何内容都似乎不能通过CNAME进行解析。它给出503 Service Unavailable

  • 我使用AWS EC2托管该应用程序,并使用HAProxy负载均衡器。
  • 使用Google Domains作为DNS名称。

有什么解决此问题的建议吗?

)

问题并不十分清晰,您的期望是将readthedocs.io指向HA代理-> EC2实例吗?通过代理从EC2提供内容。首先,为什么要使用HA代理?然后,您是否已经设置了负载均衡器? - Ashan
3
不是 DNS 问题,你的 CNAME 正常。显然,只有当“Host”头包含服务器主机名时,你的 web 服务器/应用程序才会正确响应。 - Dusan Bajic
@DusanBajic - 你是怎么想出来的? - Senthil Kumaran
2
首先,503 是一个响应,所以你已经到达了某个地方(你没有得到 ERR_NAME_NOT_RESOLVED 或超时)。接下来,你可以轻松地查看(或手动解析)主机名的实例公共 IP 地址;然后我直接在浏览器地址栏中尝试了该 IP 地址,也得到了 503,因此可以安全地假设我到达了与你使用 CNAME 连接的同一台服务器。如果 IP 地址相同,则两个请求之间唯一不同的是 Host 标头。 - Dusan Bajic
2个回答

1
所有的DNS条目都以点结尾,例如subdomain.domain.com。 不建议创建CNAME到您的EC2实例,因为该IP可能会随时间变化而变化,并且不可重新分配,这就是弹性IP的作用,只需创建一个弹性IP,将其分配给您的EC2实例并将其分配为DNS提供程序上的A记录即可。 Amazon AWS文档

0

首先创建弹性IP并将其分配给实例。然后创建A记录并指向IP。您的站点应该正常工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接