TMC*_*TMC 3 domain-name-system domain web-server amazon-ec2 azure
假设我有一个域名,foo.com在那里我有一系列类似的网页foo.com/123和foo.com/456等。我想使用的域,并提供不带链接www的前缀。这些页面也将有指向其他页面(以及彼此)的链接,而没有www前缀。
我使用 Azure 来托管我们的站点,该站点与 EC2 相同,因为该域不能有 A 记录,因为服务器环境是虚拟化的。因此,Microsoft 和 Amazon 都告诉您使用 CNAME 记录将您的域指向他们管理的 A 记录。在 Azure 的情况下,我的 CNAME 记录指向 cloudapp.net 记录(由微软管理):
foo.com CNAME foo.cloudapp.net
Run Code Online (Sandbox Code Playgroud)
foo.cloudapp.net我在 Azure 上设置的域在哪里。
我遇到了各种各样的问题,比如电子邮件传递和各种各样的人无法加载网站。2 个不同的域名服务器提供商和我的托管商告诉我,将根域作为 CNAME 条目违反了 RFC,这就是为什么我的问题是零星的。
我很惊讶听到这个消息,因为您现在看到这么多站点托管在 EC2 或 Azure 上,并且不使用www前缀。这些站点是如何设置的,以便它们可以只使用foo.com(不带www前缀)?
更新:虽然我问了有关 EC2 或 Azure 的问题,但我专门寻找有关 Azure 的信息。
在 EC2 上运行的网站可以通过区域顶点或裸域(如带有 A 记录的“example.com”)提供服务。服务器在虚拟机中运行的事实对此没有影响。许多网站都这样做,包括我的大部分网站。
如果您正在使用需要 CNAME 的服务,例如 Amazon 的 Elastic Load Balancer,那么您不能使用区域顶点或裸域(如“example.com”)指向它,因为 CNAME 不能与裸域一起使用。这是 DNS 规范的限制,与云或虚拟化实现无关。
只要您使用 Amazon 的 Route53 DNS 服务为该区域托管 DNS,您仍然可以将 Amazon 的 Elastic Load Balancer 与区域顶点或裸域(如“example.com”)一起使用。亚马逊做了一些技巧,将 A 记录动态映射到 CNAME 将返回的结果,遵守 DNS 规范,同时提供 ELB 需要提供的灵活性和功能。
我对 Azure 一无所知。您在尝试使用它的方式方面违反了 DNS 规范。