sitemap 插件按日期生成分片,文件名是 post-sitemap-20261113.xml,一周下来七份文件各不相同。GSC 里这七份的状态全是「待处理」,日志显示蜘蛛一周只抓了其中两份,其余连一次请求都没有。手动重提也没有变化。
这类报错背后常见的原因有几处,逐个排除就行。文件名带日期,每天都是一个新地址,之前的抓取记录全部作废;索引文件每天被覆盖,指向昨天分片的链接直接 404;提交记录里同时留着七份,蜘蛛无法判断哪份是当前有效版本;边缘缓存了旧的索引文件,蜘蛛读到的分片列表是三天前的。
连续两天抓索引文件,对比分片名单
curl -s https://www.example.com/sitemap_index.xml | grep -o '<loc>[^<]*'
随后把分片文件名改成固定名称,只有内容变化时才更新
grep -rn 'sitemap-' wp-content/plugins/ | head
索引文件里只保留当前有效的分片
curl -s https://www.example.com/sitemap_index.xml | grep -c 'sitemap'
末了清掉索引文件的边缘缓存后重新提交
curl -X PURGE https://www.example.com/sitemap_index.xml
恢复的判定其实很直接。索引文件里只剩固定名字的六个分片,提交后状态从待处理变成成功,第二天日志里六个分片全被抓过一遍。
文件名固定之后,内容有变化一定要更新 lastmod,否则蜘蛛按原计划低频回访,新文照样进不来。如果同一现象隔几天又出现,说明根因没找到,别当偶发处理。
