从 2020 年 11 月开始,Google 将开始通过 HTTP/2 抓取一些网站。这是 HTTP 的下一个主要版本,它比其前身更健壮、更高效、更快。此更改将使要求 Googlebot 支持通过 HTTP/2 进行抓取的网络专业人士受益。有关 HTTP/2 的更多信息,请阅读有关 HTTP/2 主题的长文。
Google 正计划逐步切换到通过 HTTP/2 爬取网站,这在服务器资源使用方面更有效。这种变化将逐渐发生,Googlebot 首先在 h2 上抓取少量网站,然后逐渐爬升到更多可能受益于最初支持的功能的网站。 Googlebot 会根据网站是否支持 h2 以及网站和 Googlebot 是否会从通过 HTTP/2 的抓取中受益来决定通过 h2 抓取哪些网站。如果您的服务器仍然只使用 HTTP/1.1,那也没关系 - 爬过这个协议没有明显的缺点。
Google 正在升级其 Googlebot 抓取工具以支持 HTTP/2。此更改将提高爬取的速度和效率,而不会对索引产生负面影响。但是,一些网站所有者可能希望选择退出此更改。当 Googlebot 尝试爬过 h2 时,站点可以通过指示服务器以 421 HTTP 状态代码响应来做到这一点。如果这不可行,网站所有者可以向 Googlebot 团队发送消息(但是,此解决方案是临时的)。
有关您可能遇到的问题的更多信息和答案,请查看 Google 的详细帖子(包括指向其 Twitter 和帮助论坛的链接)。
根据谷歌的说法,他们用来让他们的 Googlebot 在 h2 上抓取的软件已经足够成熟,可以在生产中使用。但是,他们表示是否要升级服务器取决于网站所有者。 Googlebot 只会切换到对明显受益的 h2 网站的抓取——如果没有明显的好处,Googlebot 将继续在 h1 上抓取。
Cloudflare 有一篇博文,其中包含不同的方法来测试站点是否支持 h2。要将站点升级到 h2,Google 建议与服务器管理员或托管服务提供商交谈。网站所有者无法说服 Googlebot 与他们的网站讨论 h2 - 如果该网站确实支持 h2 并且它有利于抓取,那么 Googlebot 将自动切换。否则,Googlebot 将继续在 HTTP/1.1 上进行抓取。
谷歌已经宣布,他们现在只会在对网站有明显好处的情况下通过 HTTP/2 抓取网站。这一变化是在他们发现某些网站在通过 HTTP/2 爬行时几乎没有好处之后发生的。他们将继续评估性能提升,并可能在未来改变他们的转换标准。
在 Search Console 中注册的网站的所有者会收到一条消息,指出如果他们的网站有资格通过 HTTP/2 进行抓取,那么一些抓取流量可能会继续通过 HTTP/2。站点还可以检查其服务器日志(例如,如果站点在 Apache 上运行,则在 access.log 文件中)以查看它们是否通过 HTTP/2 进行爬网。
Googlebot 支持 HTTP/2 引入的大部分功能。一些可能对渲染有益的功能,如服务器推送,仍在评估中。 Googlebot 目前不支持纯文本 HTTP/2 (h2c)。
谷歌已经宣布他们将使用 HTTP/2 进行抓取。这是 HTTP 协议的较新版本,具有多种优势,包括多路复用和并发、标头压缩和服务器推送。
服务器推送是一项尚未启用但仍在评估中的功能。它可能有利于渲染,但谷歌目前没有任何具体的说法。
为了有资格通过 HTTP/2 进行爬网,网站必须使用 HTTPS 并支持 HTTP/2。这相当于现代浏览器的处理方式。如果服务器在 TLS 握手期间使用 h2 以外的协议版本进行响应,Googlebot 将退出并稍后在 HTTP/1.1 上返回。
如果你想了解更多关于 h2 特性和爬取的信息,你可以在 Twitter 上询问谷歌。 h2 的主要好处是它节省了服务器端和 Googlebot 端的资源。 Googlebot 是使用 h1 还是 h2 进行抓取不会影响您网站的索引方式,因此也不会影响 Google 计划从您的网站抓取多少。在 h2 上爬网的网站没有排名优势。