叶子

闲言碎语

用www还是不用www?

缘起今天博客上gitcafe推广www.gitcafe.com,有提及最好用gitcafe.com而不是有www的,有赞同应该观点。那么我们到底应该用www呢还是不用www呢?

先做个统计,alexa 全球网站500强 http://www.alexa.com/topsites 第一页25个的结果(合并了同类,比如google几个,yahoo几个):

domain.com转到www.domain.com的:google,facebook,youtube,yahoo,baidu, wikipedia,qq,amazon,linkedin,taobao,sina,msn,flickr,yandex www.domain.com转到domain.com的:twitter,wordpress,weibo 不算的:live,blogspot(无论有无www,均跳出)

差距有点悬殊。亮点是:暂时还没发现www和无www并存的。没有的原因很简单,捆绑同一个主机头会造成重复收录,不仅加重搜索引擎负担,还会增加主机被索引时候的负担,同时因为2份内容一模一样会被降搜索权重。

看起来似乎www很火,那么用www的原因是什么? 浏览器的默认网址补全快捷键(ctrl+enter)结果是www.domain.com而不是domain.com? 当然不是这个原因。

先理解域名解析常用的记录,有a记录,cname记录,mx记录(其他不常用的略去)。a是ip指向,cname是别名指向,mx是邮箱指向。需要注意的是:同一个级别的域名,a,mx和cname是冲突的。也就是有cname就不能有a和mx,有mx或者a就不能有cname。

现在cdn加速,云计算主机,要你指向的时候,都是让你cname域名到他们制定的网址,比如sae的就是cname 域名到jp.cname.cloudbbs.org。这是因为程序并不是运行在一个主机上,内容也不是在同一个主机上,而是根据全球各地浏览者不同的ip,系统自动分配最近(最快)的内容给浏览者。

假设现在有个域名shugui.com,我要架在sae上,应该用?

shugui.com和www.shugui.com均可以a记录,cname以及mx记录。sae上我们需要的cname,我先把2个都cname到jp.cname.cloudbbs.org并在sae添加完毕。访问一切正常,看起来没区别是吧,真的么?

如果此时,我需要开个企业邮箱,需要添加mx记录,得到的邮箱是abc@shugui.com和abc@www.shugui.com。慢着,一般我们用的邮箱格式是前一种,极少有用后一种的。

问题来了,还记得之前提的么? cname和mx是冲突的,如果我们选择abc@shugui.com的电子邮箱,那么意味着不能添加shugui.com的cname记录,所以shugui.com的cname只能删掉,能用的只有www.shugui.com的cname了。

浏览者输入shugui.com的时候,就没有cname记录了,也就访问不了,这是不行的,那么就做个a记录,跳转到www.shugui.com吧。

这就是开头那个统计结果为什么相差如此悬殊的原因。

还有疑惑,twitter也是有@twitter的邮箱的啊,难道没用cdn也不是云主机托管? 好奇搜了下github和twitter的dns解析,发现是同一家服务商。我猜的原因是:他们的域名解析直接在根上实现了a记录解析到不同ip,所以用不着cname记录,所以和mx不冲突。pinterest不用www的原因可能同上(根据dns推测),weibo我没找到@weibo的邮箱(笑,这个还是留给weibo内部人士解惑吧o(∩_∩)o )。

总结就是一句话:domain.com留给邮箱,剩下的留给网站去吧。

2012-04-06补记: weibo上讨论到cookies污染域的问题,所以不用domain.com而用www.domain.com。 我记得设置cookies的时候,如果不加domain=”domain.com”属性,那么domain.com下设置的cookies,在www.domain.com下不会被取到。