3

我理解 URL 应该区分大小写,例如

http://www.example.com/test.php


http://www.example.com/TEST.php

应该是两件事。

但是 UTF-8 是否也应该区分大小写,例如?

http://zh.wikipedia.org/wiki/%E8%A7%82%E6%B5%8B%E5%A4%A9%E6%96%87%E5%AD%A6

对比

http://zh.wikipedia.org/wiki/%e8%a7%82%e6%b5%8b%e5%a4%a9%e6%96%87%e5%ad%a6

他们应该平等吗?

我问的原因是:Googlebot 继续使用大写的 URL,尽管我的网站都使用小写的 URL。

4

4 回答 4

1

我不能以 100% 的权威谈论这个问题,但如果你停下来考虑如何将 URL 存储在搜索索引、URL 表或谷歌使用的任何无数数据存储中,我不能想象一下,这些 URL 不会以某种方式标准化。

任何类型的规范化都应该将 URL 解码为字符串,因此应该没有区别。如果 Google 使用 % 编码存储 URL,我会感到惊讶。他们可以以 UTF-8 存储文本;百分号的存在是为了让人类可以看到事物。

我猜,谷歌“使用”大写变体只是为了显示和报告目的。我认为根本不存储 URL 编码。

于 2012-07-20T03:13:30.163 回答
0

由于它们应该是十六进制字符对,编码字符的小写和大写变体应该被认为是等效的(例如,0xab 和 0xAB 是相同的值)。

于 2012-07-20T04:01:31.187 回答
0

对于 Googlebot,很难预测它从哪里获取信息。即使您只用小写链接到它并且它在您的 XML 站点地图中以小写形式出现,也可能会有人以大写形式链接到您的站点。

您是正确的,Google 将 URL 视为区分大小写。这就是他们支持rel=canonical 规范的原因。如果您正确使用 rel=canonical 规范,我不会担心 Googlebot 正在访问全部大写的 URL。当他们处理页面以进行索引时,它将所有页面“值”合并到规范 URL。

如果您想更加明确,您可以 301 将所有大写请求重定向到小写版本。所以 Googlebot 会跟着 301s 到小写版本。

另请注意,即使您有 301 和 rel=canonical ...您也会看到 Googlebot 将继续抓取全部大写的网址。即使这些 URL 是 404 或 410,也会发生这种情况。基本上,Googlebot 永远不会忘记一个 URL,并且它会不时尝试它知道曾经存在过的旧 URL,或者仍然有指向它的链接......即使他们'再岁,早已不复存在。

于 2012-07-23T18:13:42.127 回答
0

url 的百分比编码部分应规范化为相同的 url。这个维基百科页面应该给你所有的答案;)

http://en.wikipedia.org/wiki/URL_normalization

于 2012-07-23T18:32:40.347 回答