Home

>

【谷歌博客】12月抓取: CDN 对抓取的影响

【谷歌博客】12月抓取: CDN 对抓取的影响

Table of Contents

2024年12月24日,Google 搜索中心博客发布了“12月抓取”(Crawling December)系列的最后一篇文章。
原文链接: https://developers.google.com/search/blog/2024/12/crawling-december-cdns
以下是对文章的简单翻译和解读,建议阅读原文以获取更多详细信息。

CDN(内容分发网络,Content Delivery Network)是一种通过将网站内容缓存到多个服务器上以加速内容传输的网络。通过让用户从距离最近的服务器获取内容,CDN 提升了访问速度,优化了用户体验。
本文将探讨如何利用 CDN 提升网站的抓取效率与用户体验,并分析使用 CDN 后抓取方面的一些具体情况。

回顾:什么是 CDN?

CDN 是源服务器与终端用户之间的“中介”,主要负责缓存网站内容。其核心功能在于减少服务器对重复请求的响应需求。
当用户访问某个 URL 时,CDN 会将该内容暂时存储在缓存中,方便快速提供给其他用户。

CDN 通过从离用户更近的缓存服务器提供内容显著提升速度。例如,澳大利亚的用户访问托管在德国的网站时,可以从澳大利亚的 CDN 缓存中获取内容,从而避免长距离传输带来的延迟。
此外,CDN 还能够通过全球流量管理,保护网站免受过载或恶意攻击。例如,Cloudflare 在 2024 年 10 月 21 日成功缓解了一次 4.2 Tbps 的 DDoS 攻击,持续时间约一分钟。

CDN 如何提升网站性能?

缓存:CDN 缓存媒体文件、JavaScript、CSS 甚至 HTML 等资源,减少服务器的计算与带宽消耗,同时加快页面加载速度。这种优化通常能直接提高转化率。
安全保护:CDN 可识别并阻止异常流量和恶意攻击,确保网站在高流量或遭受攻击时依然可访问。通过直观的用户界面管理,使用 CDN 阻止不必要的流量(如特定爬虫)比通过服务器配置更便捷。
可靠性:某些 CDN 即使网站宕机,也能提供静态内容,从而避免用户流失。

使用 CDN 对抓取的影响

1. 抓取速率

爬虫通过 IP 判断网站是否使用了 CDN。使用 CDN 的网站通常允许更高的抓取速率。
在首次抓取某个 URL 时,CDN 缓存尚未生成,源服务器需直接响应请求,这对“抓取预算”有一定影响。特别是当你一次性发布大量 URL 时,抓取速率可能会在最初几天内显著增加。

2. 渲染效率

在“12月抓取动态”的第一篇博客中提到,将图片、脚本和样式表托管在 CDN 上有助于更高效地渲染页面。然而,使用独立域名的 CDN 会增加额外的 DNS 解析时间,稍微影响加载速度。如果 CDN 和主站使用相同域名,则可避免这一问题。

当 CDN 过度保护时

CDN 的安全功能可能无意间阻止了爬虫的抓取请求,例如将爬虫 IP 加入网站应用防火墙(WAF)的黑名单。

1. 硬阻塞

硬阻塞是指 CDN 对爬虫返回错误响应,可能包括以下几种情况:

    HTTP 503/429 状态码:表示服务暂时不可用。这种阻塞虽然短期内不会移除内容,但会降低爬虫对链接的抓取速率。
    网络超时:这是爬虫认为网站过载的明显信号,可能导致链接被移除搜索结果。
    错误内容返回 200 状态码:这种做法会让爬虫误认为错误链接是有效的,导致资源浪费,并可能因内容重复被视为垃圾内容。

    2. 软阻塞

    一些 CDN 会显示人机验证页面(如“你确定自己是人类吗?”),爬虫无法通过验证,因此只能抓取到验证页面。
    建议通过 HTTP 503 状态码明确告知爬虫内容暂时不可用,避免内容被错误移除。

    3. 调试阻塞

    可通过 Google Search Console 的 URL 检查工具检查爬虫是否受阻。如果渲染结果显示为空白页或验证页面,说明爬虫被阻止。
    谷歌公开了爬虫的 IP 地址段(https://developers.google.com/search/docs/crawling-indexing/verifying-googlebot),可通过将这些 IP 加入白名单解决问题。

    定期检查的重要性

    CDN 的封锁可能是无意的,建议定期检查黑名单。为了加快检查速度,可仅搜索 IP 的前缀,例如查找“192.168”而不是完整 IP。
    以下是一些常见 CDN 的相关文档:

    Cloudflare: https://developers.cloudflare.com/bots/get-started/free/#visibility
    阿卡迈:https://www.akamai.com/products/bot-manager
    Fastly: https://www.fastly.com/products/bot-management
    F5:https://clouddocs.f5.com/bigip-next/20-2-0/waf_management/waf_bot_protection.html
    谷歌云: https://cloud.google.com/armor/docs/bot-management

    Share:

    Related Articles

    Table of Contents