先看现象。索引报告显示已编入索引 4.2 万条,实际用 site 查询只找到 1.8 万条。逐条核对发现不少带 noindex 的页面被算进了已编入索引,报表和真实收录差了一倍多。
真正麻烦的地方在于,几个原因的现象几乎一样。报告统计的是最后一次成功抓取时的状态,后加的标签不算。另一种情况是noindex 是通过 JS 或响应头加的,抓取时没读到。
不容易想到的是,canonical 指向别处的页面也被计入同一组。
还有一种情况,站点有多个属性,报告把 www 和裸域的条目混在一起。
第一件事是抽查十条已编入页面看实际标签
curl -s https://www.example.com/p/1 | grep -i robots
接着确认响应头里有没有 noindex
curl -sI https://www.example.com/p/1 | grep -i x-robots
然后按属性分别导出索引清单比对
curl -s 'https://api.example.com/gsc/sitemaps' | head
末了把
改完先别撤,确认这几项。改完标签输出方式后重新抓取,报告里的数字在三周内回落到 2.1 万条,和 site 查询的差距缩到两成以内。
提醒一点。索引报告是滞后快照,拿它当准数去做决策,很容易把标签问题和统计口径混为一谈。拖得越久,排查成本越高,因为现场状态会被后续操作覆盖。
