先看现象。站点用 WordPress 加 WooCommerce,sitemap 里有八万条 URL,Search Console 抓取统计显示 Googlebot 每天只来两百次左右,新商品一周都进不了索引。

真正麻烦的地方在于,几个原因的现象几乎一样。服务器 TTFB 常年 1.8 秒,蜘蛛主动降低了抓取并发。也可能是robots 里的 Crawl-delay 虽不被 Google 认,但 Bing 照做,连带了整体节奏。

另外,大量参数页占用了抓取配额,真正的内容页分不到请求。

少数情况下是站点没有稳定的内链入口,蜘蛛只能靠 sitemap 一条条试。

测源站响应时间

curl -s -o NUL -w "ttfb=%{time_starttransfer}s total=%{time_total}s\n" https://www.example.com/

然后按目录统计抓取分布

awk '{print $7}' access.log | cut -d/ -f2 | sort | uniq -c | sort -rn | head

再往下把参数页从 sitemap 里剔除

curl -s https://www.example.com/sitemap.xml | findstr /v "?" | findstr loc

提交精简后的索引文件

curl -s "https://www.google.com/ping?sitemap=https://www.example.com/sitemap_index.xml"

命令输出我都留了记录,免得改完记不清原来的值。

改完先别撤,确认这几项。TTFB 压到 400ms 以内后,日抓取量两周内从两百涨到一千五,新商品次日就能在日志里看到抓取记录。

这里还有个坑。抓取量不是提交得多就涨,源站速度和页面价值才是蜘蛛分配预算的依据。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。

作者 9823189