这个坑值得记一笔。三千条 URL 停在已发现但尚未编入索引超过三个月,提交 sitemap 和手动请求编入索引都没有效果,数字一动不动。
原因不止一个,得分开看。页面只有 sitemap 入口,站内没有任何可抓取内链;栏目分页被 noindex,蜘蛛爬到第二页就断了;抓取预算被大量参数页和搜索结果页消耗掉。
上来先看这些地址有没有站内内链指向
curl -s https://www.example.com/sitemap.xml | grep -c '<loc>'
再往下检查分页是否误加了 noindex
grep -rn 'noindex' /www/wwwroot/site/wp-content/themes/
给参数页加规则腾出预算
Disallow: /*?replytocom=
那几天正好在做别的变更,先把时间线对齐才敢动手。
排查用的命令都是临时敲的,没有写成脚本,事后才整理。
别只看报错消失,验证要多做一步。两周后同一批 URL 的状态从已发现变为已编入索引,抓取统计里的日均请求数同步上升。
只提交 sitemap 不给内链,等于让蜘蛛自己猜,收录速度会一直卡在已发现这一步,怎么催都没用。拖得越久,排查成本越高,因为现场状态会被后续操作覆盖。