如何在Azure / EC2上设置不使用www前缀的域

假设我有一个,foo.com,我有一系列的页面,如foo.com/123foo.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需要提供的灵活性和能力。

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

我对Azure一无所知。 您正在试图使用它的方式违反了DNS规范。

如果DNS使用ALIASloggingtypes进行DNSimple托pipe,或者使用ANAMEloggingtypes进行DNSMadeEasy托pipe,则可以执行此操作。

Cloudflare的 DNS也允许这样做。

另外,如果你使用EC2,ELB和亚马逊的Route53 DNS服务,也是可以的 。