网站缓存、CDN 配置对谷歌 SEO 的利与弊
缓存与 CDN 各自解决什么
两者常被一起提,但作用不同:
| 机制 | 解决的问题 | 作用位置 |
|---|---|---|
| 浏览器/服务器缓存 | 重复访问不必重新下载或重新生成 | 用户浏览器、服务器、代理层 |
| CDN | 用户离源站远,第一字节时间(TTFB)高 | 分布在各地的边缘节点 |
两者共同的结果都是更快的响应,而速度属于谷歌的页面体验信号(来源见文末),也是 Core Web Vitals 的基础。
对 SEO 的好处
- 速度提升:静态资源从就近节点返回,TTFB、LCP 改善;
- 稳定性提升:抗流量峰值,源站 5xx 变少,爬虫抓取成功率提高;
- 源站压力下降:爬虫大规模抓取时不会因为服务器扛不住而降级;
- 抓取预算更有效:响应快,同样时间内谷歌能抓更多页。
真实存在的风险
| 风险 | 后果 |
|---|---|
| 缓存了错误状态码 | 临时 500/404 被缓存下来,谷歌长期抓到错误 |
| 缓存了错误的响应头 | noindex 或错误 canonical 被缓存,页面掉索引 |
| 内容更新没触发失效 | 谷歌抓到旧版正文,改了等于没改 |
| WAF/防爬把 Googlebot 挡了 | 返回验证码或 403,直接抓不到 |
| 按 IP 或地区返回不同内容 | 谷歌看到的内容与用户不同,有伪装风险 |
| 地域封锁 | 节点所在地区被限制,爬虫请求失败 |
配置建议
- HTML 不缓存或短缓存:内容页建议源站直出或短 TTL,静态资源(CSS/JS/图片)走长缓存;
- 长缓存必须带版本号:文件名或查询串带 hash/版本号,更新时换名,避免用户拿到旧文件;
- 不要缓存 4xx/5xx,或把错误响应缓存时间设为极短;
- 建立失效机制:发布或改文后主动 purge 对应 URL;
- 放行 Googlebot:WAF、限流、验证码规则里对已验证的 Googlebot 放行;
- 验证是否为真 Googlebot:谷歌官方方法是做反向 DNS 查询,确认主机名以
.googlebot.com或.google.com结尾,再用正向 DNS 反查回同一 IP。只看 User-Agent 不可靠,UA 可以伪造。
上线后怎么验
- 用 GSC 网址检查「测试实际网页」,确认抓到的是最新内容;
- 看抓取统计报告,抓取量和响应时间有无异常;
- 用 curl 带 Googlebot UA 请求,对比与普通 UA 返回是否一致。
常见错误
- 整站全缓存,改了文章线上还是旧的;
- 把 404 页缓存成 200;
- WAF 把谷歌 IP 段批量封了还不知道;
- 只按 UA 判断 Googlebot,被假爬虫或漏判真爬虫。
来源:https://developers.google.com/search/docs/crawling-indexing/verifying-googlebot
来源:https://developers.google.com/search/blog/2020/04/improve-site-speed-through-caching
