预渲染对百度有效,但有前提:预渲染服务要快、快照要新、百度蜘蛛的 UA 要能命中规则。三条缺一条,效果就会打对折甚至归零。
四个站的三个月对照
2025 年 10 月,我们给四个客户站接入预渲染,方案是自建服务加缓存,观察三个月百度收录变化。
- A 站,文档站 800 页:收录从 2100 涨到 1.9 万。
- B 站,营销站 300 页:从 1400 涨到 9000。
- C 站,产品站 600 页:从 3200 只涨到 3400。
- D 站,博客 400 页:从 6000 涨到 7100。
有效的那两个做对了什么
预渲染服务响应都在 500 毫秒以内,快照缓存 24 小时内刷新,主站没有屏蔽预渲染服务的请求路径。A 站还额外做了两件事:把 sitemap 重新提交,并在正文里补了 300 字以上的说明文字。快照里只有标题和图片的页面,收进去也没用。
无效的那两个差在哪
C 站的预渲染服务平均响应 3.2 秒,百度蜘蛛超时后直接放弃,日志里能看到大量请求 499 中断。D 站的问题更简单:预渲染规则只匹配了 Googlebot 的 UA,百度 UA 没进白名单,一直拿到的是空壳 HTML。配置一行之差,白等了三个月。
三条可执行建议
- 预渲染的 UA 白名单必须包含 Baiduspider,还要考虑百度移动蜘蛛。
- 服务响应压到 1 秒内,超时就等于没做。
- 快照定期刷新,价格、产品名这类内容别用一年前的缓存。
怎么验证有没有生效
用百度搜索资源平台的抓取诊断,看"抓取到的 HTML"里有没有正文。这是最直接的方法,比在浏览器里看源码可靠。Google 这边用网址检查的"已呈现的 HTML"。
成本和我们自己的做法
自建一套预渲染服务,按 1000 个页面算,服务器成本每月几百块,开发两天。第三方服务按请求量计费,抓取量大的站一个月要几千块,而且响应时间不受你控制,这是 C 站翻车的主要原因。
我们的默认做法是自建加 Redis 缓存,快照按内容类型设过期时间:产品页 6 小时,文档页 24 小时,营销页 7 天。监控加两个指标就够了——预渲染服务的 P95 响应时间和快照缓存命中率,命中率低于 80% 就要查缓存键。
立场
预渲染是止痛药,不是治疗方案。它解决的是"现在就要收录",不解决"三年后的结构问题"。真要做长线,SSR 或者 SSG 早晚要上。预渲染只适合两类团队:排期排不出重构的,和页面数量不大、只想先拿流量的。
元析智能
为软件公司做 SEO 和 GEO 优化