选择 www 和非 www URL
网站所有者经常遇到的一个问题是,是选择“www”(www.example.com
)还是“非 www”(example.com
)URL。此页面提供了一些关于最佳选择的建议。
什么是域名?
在 HTTP URL 中,紧跟初始 http://
或 https://
之后的第一个子字符串称为域名。此域名托管在文档所在的服务器上。
服务器不一定是物理机器:同一台物理机器上可以存在多个服务器。或者,一台服务器可以由多台机器处理,这些机器协作产生答案或在其之间平衡请求负载。关键是,从语义上讲,一个域名表示一台唯一的服务器。
那么,我是否必须为我的网站选择其中一个?
- 是的,您需要选择一个并坚持使用它。选择哪个作为规范位置由您决定,但如果您选择了一个,请坚持使用它。这将使您的网站在用户和搜索引擎看来更加一致。这包括始终链接到所选域名(如果您在网站中使用相对 URL,这应该不难)以及始终共享指向同一域名的链接(通过电子邮件/社交网络等)。
- 不,您可以拥有两个。重要的是您在哪个是官方域名方面保持连贯性和一致性。此官方域名称为规范名称。所有绝对链接都应使用它。但即使这样,您仍然可以使另一个域名正常工作:HTTP 允许使用两种技术,以便用户或搜索引擎清楚哪个域名是规范域名,同时仍然允许非规范域名正常工作并提供预期的页面。
因此,选择您的一个域名作为规范域名!下面有两种技术可以让非规范域名继续工作。
规范 URL 的技巧
有不同的方法可以选择哪个网站是规范的。
使用 HTTP 301 重定向
在这种情况下,您需要配置接收 HTTP 请求的服务器(这很可能是“www”和“非 www”URL 的同一个服务器),以便对非规范域名的任何请求都以适当的 HTTP 301
响应进行响应。这将重定向尝试访问非规范 URL 的浏览器到其规范等价物。例如,如果您选择使用“非 www”URL 作为规范类型,则应将所有“www”URL 重定向到其等价的无“www”的 URL。
示例
- 服务器接收对
http://www.example.org/whaddup
的请求(当规范域名是 example.org 时)。 - 服务器使用代码
301
和Location
标头Location: http://example.org/whaddup
进行响应。 - 客户端向规范域名下的位置发出请求:
http://example.org/whaddup
。
HTML5 样板项目 在 如何配置 Apache 服务器以将一个域名重定向到另一个域名 上提供了一个示例。
使用 <link rel="canonical">
可以向页面添加一个特殊的 HTML <link>
元素以指示页面的规范地址是什么。这对页面的阅读者没有影响,但会告诉搜索引擎爬虫页面实际所在的位置。这样,搜索引擎就不会多次索引同一页面,这可能会导致页面被视为重复内容或垃圾邮件,甚至从搜索引擎结果页面中删除或降低页面的排名。
添加此类标记时,您为两个域名提供相同的内容,并告诉搜索引擎哪个 URL 是规范的。在前面的示例中,http://www.example.org/whaddup
将提供与 http://example.org/whaddup
相同的内容,但在头部中添加了额外的 <link>
元素
<link href="http://example.org/whaddup" rel="canonical" />
与之前的情况不同,浏览器历史记录会将非 www 和 www URL 视为独立的条目。
使您的页面同时适用于两者
使用这些技术,您可以配置服务器以针对两者(带 www 前缀和不带 www 前缀的域名)正确响应。建议您执行此操作,因为您无法预测用户将在浏览器 URL 地址栏中输入哪个 URL。问题在于选择要使用哪种类型作为规范位置,然后将另一种类型重定向到它。
决定案例
这是一个非常主观的话题——它可以被认为是 自行车棚 问题。如果您想更深入地阅读,以下是一些资源
- 裸域名的选项 在 netlify.com 上(2020 年)
- WWW 与非 WWW – 哪个对 WordPress SEO 更好? 在 wpbeginner.com 上(2023 年)
另请参阅
- 人们在 URL 地址栏中输入内容的统计数据 (2011)