为什么使用 www ?

  cheney

    这篇文章就是给那些想要弄清楚为什么标准 URLs 前面要加 www 的网络管理员们准备的.

    首先,声明一下,不带 www 的域名有时候被人们称作裸域名,这里,我也这么称呼.

    ##为什么你应该使用 www ?
    你应该使用 www ,现在你的网站还小,但是明天你会想做一个大的网站,非常大.

    技术上原因让使用 www 都是这样的: 在拥有百万访问量(或者更多)的大型网站,利用多个子域名提供了丰富的服务的网站,和几乎所有的部署在"云"端应用.

    例如, Heroku , 强烈建议不要使用裸域名. 如果使用 Heroku 或者 Akamai 作为服务端,服务提供者希望能够通过更新 DNS 记录,将出错的服务器的流量转发到健康的服务器.这种设置是通过 DNS CNAME 解析来实现的,但是裸域名不允许 CNAME 解析.这种情况只存在于你的网站足够,需要许多的冗余服务器来提供一种服务.但是谁不想自己的网站变得很大呢? 为了使用不带 www 的域名,你将不得不运行在自己的服务器农场,你将无法使得主机群的效率最大化.(推荐阅读: 为什么Heroku 不建议使用裸域名 )

    另外一个原因就是 Cookies. 一般网站会使用 static.example.com 作为静态文件的子域名. 如果你是用带 www 的主页,这不会产生问题,你网站的 cookise 不会被设置到 static 子域名下.(除非你特别要求这么做).如果你是用裸域名, 设置和获取 cookise 都是针对所有子域名的( 适用于 RFC6265 标准的浏览器 ),这会导致减慢了访问速度,而且有可能导致缓存工作异常.如果必须用裸域名,又想这个问题,那就得另外购买一个域名作为静态内容服务.例如,Twitter,就是这样搞的.当然,如果你明确需要在多个子域下分享 cookis 以达到一次登录使用多个服务的目的.( Google 是这样做的).你也可以专门买一个域名用来适应任何情况.(推荐阅读 : URL 带 "www"的最主要原因 )

    说到cookise,如果你真的决定使用裸域名,将不同的服务放在不同的子域下,同时分享 cookise .很快你就发现这样做也是行不通的.除非你专门用一个域名来处理 cookise .按照 RFC6265 协议cookise 实在所有子域名和裸域下共享的,但是有些浏览器没有完全按照协议来做.

    这些问题你可能一个都没有碰到过,但是随着你的网站的增长,肯定会遇到的. 今天使用 www ,将会使你更好的面对未来的挑战.

    应该将 没有 www 的网页跳转到 www ?
    是的

    原文: http://www.yes-www.org/why-use-www/