当前位置:首页 > 焦点

为什么有些网站开头有www有些却没有

你在地址栏敲下一串字母,有网回车,站开页面加载。却没但你可能注意过,有网有些网站前面顶着“www”,站开有些却光秃秃的却没,直接是有网“example.com”。这差别到底哪来的站开?

先说结论:www这玩意儿,今天基本是却没个历史遗留问题,但背后牵扯着DNS解析、有网Cookie作用域和网站运维的站开偷懒程度。

上世纪九十年代,却没互联网刚起步时,有网服务器得按功能分工。站开一台机器跑网页服务,却没另一台跑FTP文件传输,还有一台管电子邮件。为了区分这些服务,人们就在域名前加子域名——www表示万维网,ftp表示文件传输,mail表示邮件。你访问www.example.com,实际上是在告诉DNS服务器:“我要找那台负责网页的机器”。

后来技术变了,一台服务器能同时干所有活儿,但习惯没变。很多老牌网站,比如微软、亚马逊,至今保留着www前缀,纯粹是因为二十年前就这么配的,改起来麻烦。

但麻烦在哪?关键在于Cookie。如果你用裸域名example.com,那所有子域名——包括www.example.com、blog.example.com、shop.example.com——都会共享这个域名下的Cookie。这在安全上是个隐患。比如你在shop.example.com登录了账号,那恶意脚本可能通过blog.example.com读取你的会话Cookie。所以很多大型网站故意把www和裸域名分开,让www.example.com只处理主站,其他子域名各管各的Cookie。

这时候你可能会问:那去掉www不是更省事?对,但省事有代价。裸域名(也叫apex域名)在DNS解析上有个坑——它不能使用CNAME记录(别名记录)。CNAME能让你把域名指向另一个域名,比如把www指向CDN服务商的域名。但裸域名只能用A记录,直接指向IP地址。IP一变,你得手动改,而CDN服务商的IP经常变。这就是为什么很多用CDN的网站宁可保留www——他们需要CNAME的灵活性。

不过现在有了新招。DNS服务商搞出了“CNAME Flattening”(CNAME展平)技术,让裸域名也能用CNAME记录。所以近几年新建的网站,尤其是那些用Cloudflare或Netlify的,干脆直接裸奔,连www都不要了。你访问一个用Netlify托管的个人博客,地址栏里多半没有www。

还有个更现实的因素——SEO。谷歌官方说过,www和裸域名在搜索排名上没有区别。但如果你把两个都开放访问,且没做301重定向,那搜索引擎会认为你有两份重复内容,反而会分散权重。所以网站管理员必须二选一,然后把另一个永久重定向过去。选哪个?看心情。

我自己观察下来,有个挺有意思的规律:政府网站和教育机构几乎都保留www,可能因为他们的IT部门保守,怕改出问题。而新兴的SaaS产品和开发者工具,十个里有八个用裸域名,因为他们更依赖CDN和自动化部署。

最后说个冷知识:你试着访问一下裸域名,比如直接输入google.com,浏览器会自动帮你跳转到www.google.com。反过来,输入www.github.com也会跳到github.com。这种重定向是运维人员手动配置的,不是浏览器自作主张。所以下次看到地址栏里有没有www,你其实是在看那个网站的服务器管理员在十年前做了个什么决定。

分享到: