假设我有一个域,foo.com,我有一系列的页面,如foo.com/123
和foo.com/456
等。我想使用该域,并提供没有www
前缀的链接。 这些页面也将链接到其他页面(和彼此)没有www
前缀。
我正在使用Azure来托pipe我们的网站,这与EC2相同,因为服务器环境是虚拟化的,所以域不能有Alogging。 因此,微软和亚马逊都会告诉你使用CNAMElogging来将你的域名指向他们pipe理的Alogging。 在Azure的情况下,我的CNAMElogging指向一个cloudapp.netlogging(由微软pipe理):
foo.com CNAME foo.cloudapp.net
其中foo.cloudapp.net
是我在Azure上设置的域。
我遇到各种各样的问题,如电子邮件传递和各种人无法加载该网站的各种问题。 2个不同的名称服务器提供商,我的主机告诉我,它违反了RFC有一个根域是CNAME条目,这就是为什么我的问题是零星的。
听到这个消息,我感到很惊讶,因为现在你看到这么多的网站托pipe在EC2或Azure上,并且不使用www
前缀。 这些网站如何设置,以便他们可以只使用foo.com
(没有www
前缀)?
更新:当我问到有关EC2或Azure的问题时,我正在专门查找有关Azure的信息。
在EC2上运行的网站可以通过Zone Apex或裸站(如带有Alogging的“example.com”)提供服务。 服务器在虚拟机中运行的事实对此没有影响。 很多网站都是这样做的
如果您使用的是需要CNAME的服务,例如Amazon的Elastic Load Balancer,那么您不能使用区域顶点或“example.com”这样的裸域指向它,因为CNAME不能与裸域一起使用。 这是对DNS规范的限制,而不是与云或虚拟化实现有关的东西。
只要您使用Amazon的Route53 DNS服务托pipe该区域的DNS,您仍然可以将Amazon的Elastic Load Balancer与区域顶点或裸域(如“example.com”)一起使用。 亚马逊的做法是dynamic地创build一个Alogging地图,以便CNAME返回的结果符合DNS规范,同时提供ELB需要提供的灵活性和能力。
我对Azure一无所知。 您正在试图使用它的方式违反了DNS规范。
如果DNS使用ALIASloggingtypes进行DNSimple托pipe,或者使用ANAMEloggingtypes进行DNSMadeEasy托pipe,则可以执行此操作。
Cloudflare的 DNS也允许这样做。
另外,如果你使用EC2,ELB和亚马逊的Route53 DNS服务,也是可以的 。