雷火电竞网页

雷火电竞网页 » 解决方案 » 客户办事
客户办事 Services

为什么很多网站域名去“www”拜候

时间:2012-12-30 15:33:35 点击:3701次

越来越多的网站域名不加www了,如twitter、微博等等(包罗一些非社交

雷火电竞网页

)。这个问题我琢磨过很久,从三个方面分享一下我的心得。

  1、不加 www 的裸域名好处主要是域名更加简短、轻易记忆。
 
  裸域名只能绑定 DNS 的 A 记录,不能绑定 CNAME 记录。也就是说你不能把裸域设定为别的域名的别号。很多时候这对治理不是很便利,特殊是使用第三方托管办事的时候。假如第三方迁移办事器导致 IP 地址变换,你必需本身去更改 DNS 的 A 记录。

  比如你的个人博客采用 Tumblr 的办事,假如使用裸域,你需要手动将你域名的 A 地址指向 Tumblr 指定的 IP 地址。Tumblr 假如迁移了机房,所有通过这种方式设定个人域名的用户都必需更改本身的 DNS 才能继续使用,不然办事就会中止。使用子域名的 CNAME 记录就相对简单很多,只需要将 www 子域名的 CNAME 字段指向 domains.tumblr.com 这个域名,之后假如 Tumblr 更改 IP 地址,他们只需要重新设置 domains.tumblr.com 这个域名的 A 记录,而无需要求每个用户去更改 DNS 记录。

  这个技术上的限制导致许多大型的第三方办事商不撑持使用裸域。典型的如 Google 的办事,现在都不能使用裸域。Google 的办事用户基数大,不得不采用 DNS 级别的分布式,使用到的 IP 地址太多,并且变换大。让用户绑定 A 记录的话不利于负载均衡,维护起来也是几乎不成能完成的任务。同理,大部门 CDN 也不撑持裸域。

  裸域的 cookie 的作用范围太大。假如知乎也采用裸域,那么知乎所有 cookie 的作用范围就包罗zhihu.com 下的所有子域名。也就是说拜候 foo.zhihu.com 和 bar.zhihu.com 的时候城市带上zhihu.com 裸域页面设置的 cookie。从安全、隐私、可扩展性、以及治理的角度而言,这对很多大型网站来说是不成接受的。

  URL 的正则匹配,假如带 www 前缀的并且以 .com/.net/.org 结尾的,通常成功的机会要大很多。这个你会在许多文本编纂器里面碰到。假如 URL 不是 www 开头,并且也不是三大顶级域名结尾的,匹配成功的概率就要小很多。这是使用过程中有时候会让人很抓狂的点,重不主要全看你的用途和场所了。

  别的一点非技术上的考量:用 www 子域名的好处表现在线下的环境,比如户外广告、报纸杂志、语音广播、语音电话等使用场所,www 这个前缀(不管是视觉的还是听觉的)能够很明确的提醒受众,这个信息片段是一个网站。有人会说加上 http:// 前缀也能解决这个问题,但现在随着以 Chrome/Safari 为首的浏览器都最先在地址栏里隐藏 http:// 协议前缀了,普通用户对于 http:// 这几个字符的理解会越来越模糊,所以假如是线下的话,保留 www 这个 visual/vocal cue 还是有必然意义的。

  总的来说对于大拜候量或多子域名的网站来说,不建议使用裸域。小流量或子域名少的网站的话就看个人爱好了。我挺喜欢裸域的。比来几年流行起来的「单页网页应用」(Single Page Web App) 也是以采用裸域的居多,Twitter 算是一例。

  2、去掉www是否会影响网站的SEO(主要是排名和收录)?(前提是过去有加www)

  早先裸域刚最先流行的时候确实有传闻说不利于 SEO,但现在看来似乎并无任何问题。假如有的话也是搜索引擎的 bug,给他们提一下他们应该会很乐意去改。Google 的站长工具里面有工具可以帮手你做 URL 迁移的,可以有效的解决这个问题,再配合下一部门的跳转,不用担心对 SEO 有任何负面影响。

  3、用什么方式去跳转最好?(如301)

  不管你决定使用还是不使用裸域,最好不要在同时保留 www 和非 www 前缀的 URL,这样既不便操作户的浏览器区分拜候历史,也会对你做拜候统计带来不少麻烦。最佳的方式是采用 301 跳转,并且跳转的时候保留 URL 里域名后的全部内容。比如,假如你决定使用裸域 http://example.com,那么请务必将

  http://www.example.com/foo/bar?spam=egg

  301 跳转到

  http://example.com/foo/bar?spam=egg 

  去。或者反过来,假如你决定不使用裸域,那么请务必将

  http://example.com/foo/bar?spam=egg
 
 301 跳转到
 
 http://www.example.com/foo/bar?spam=egg
 
 这样的跳转需在 web 办事器里单独配置,很多 DNS 治理界面提供的简单的跳转到新域名的根目录无法实现这样的功能(仅仅跳到 http://example.com/ ),对用户体验和搜索引擎 SEO 而言都长短常糟糕的。

  下面给出如安在 nginx 里面实现上述的跳转:
 

  # redirect http://www.example.com to http://example.com

  server {

  server_name www.example.com;

  rewrite ^/(.*) http://example.com/$1 permanent;

  }

  # redirect http://example.com to http://www.example.com

  server {

  server_name example.com;

  rewrite ^/(.*) http://www.example.com/$1 permanent;

  }

关闭地图

Back to Top

24小时客服热线:
 0379-63260019