Google 更新了他们的 Googlebot 开发者支持页面,以反映 Google 现在可以尝试通过最新的 HTTP/2 协议下载页面。 这将于 2020 年 11 月生效。Googlebot 开发者页面已于 2020 年 11 月 12 日更新以反映这一变化。
这一变化此前已于 9 月宣布。 该更改现已于 2020 年 11 月生效。
根据谷歌:
“通常,Googlebot 通过 HTTP/1.1 进行抓取。 但是,从 2020 年 11 月开始,如果网站支持,Googlebot 可能会通过 HTTP/2 抓取可能从中受益的网站。”
为什么选择 HTTP/2 网络协议
HTTP/2 是目前最新的网络协议。 它允许在服务器和浏览器(或 Googlebot)之间更快、更有效地传输数据。
HTTP/2 的作用是减少网页从浏览器传送到服务器所需的时间。 HTTP/2 还通过压缩 HTTP 标头字段来减少开销。
在以前的网络协议 (HTTP/1) 下,必须并行下载多个流,因为在旧的 HTTP/1 版本下一次只启用一个请求。
借助 HTTP/2,Googlebot 和浏览器可以利用新的“多路复用“ 质量。 这意味着可以从一个连接在一个流中下载多个资源,而不必从多个连接请求多个流来下载同一个网页。
据一位官员称 Github 上的 IETF 常见问题解答页面:
“HTTP/1.x 有一个称为“行头阻塞”的问题,实际上一次连接上只能有一个请求未完成。
…多路复用通过允许多个请求和响应消息同时传输来解决这些问题; 甚至可以在网络上将一条消息的一部分与另一条消息混合在一起。
反过来,这允许客户端每个源仅使用一个连接来加载页面。”
HTTP/2 的功能意味着更少的服务器拥塞并节省服务器资源。
最大限度地减少服务器资源的压力对网站有好处。 有时,不仅是 Googlebot,还有许多其他机器人同时访问一个网站。
结果是该站点开始以缓慢的方式响应,因为正在使用如此多的服务器资源。 如果 Googlebot 无法抓取网站,这对试图查看网页的用户不利,对发布商不利,因为服务器正被诸如爬虫和黑客等流氓机器人拉伸到极限。
根据谷歌:
“……从 2020 年 11 月开始,如果网站支持,Googlebot 可能会通过 HTTP/2 抓取可能从中受益的网站。
这可能会为网站和 Googlebot 节省计算资源(例如 CPU、RAM),但不会影响您网站的索引或排名。”
发布者可以选择退出 HTTP/2 抓取
可以选择退出 HTTP/2 抓取。 服务器必须配置为发送 421 服务器响应代码。
421 状态代码被 Internet 工程任务组 (IETF.org) 描述为误导请求。 这意味着如果对 HTTP/2 的请求不可用,它就会被错误定向。
“421(Misdirected Request)状态码表明请求被定向到无法产生响应的服务器。
这可以由未配置为针对请求 URI 中包含的方案和权限组合生成响应的服务器发送。”
谷歌的开发者页面推荐:
“要选择不通过 HTTP/2 抓取,请指示托管您网站的服务器在 Googlebot 尝试通过 HTTP/2 抓取您的网站时以 421 HTTP 状态代码进行响应。 如果这不可行,您 – 可以向 Googlebot 团队发送消息 – (但此解决方案是临时的)。”
您的网站是否有资格进行 HTTP/2 抓取?
许多网站应该准备好进行 HTTP/2 抓取。 找出来很容易,您可以验证您的服务器是否符合条件 HTTP/2 检查工具.
HTTP/2 爬行是一个受欢迎的变化
Googlebot 使用 HTTP/2 协议进行抓取的能力对发布商来说是个好消息。 它将减少服务器负载并使 Googlebot 更容易抓取网站。