做站点运营的人经常会做一件事:用 site 指令看一眼收录数字,再和自己后台的页面总数比一比,发现两边差得离谱,然后开始怀疑站点出了问题。其实这两套数字本来就不是一回事,直接相减没有意义。真正有用的是把差异拆开,看多出来的那部分是什么,少掉的那部分又是什么。
对账前先统一口径
site 查询返回的数字只是估算,会随查询词、地区、时间点波动,不能当成精确的库存表。所以对账之前,先明确自己这边“站内页面”指什么。
- 只算正式域名下的地址,测试环境、预览地址先排除;
- 只算返回 200 且有实际正文内容的 HTML 页面;
- 参数变体、大小写变体、结尾斜杠变体先归到一个主地址上;
- 已下线的旧地址单独列一份,不混进总数。
口径不统一,第一步就会把自己绕进去。理清之后再分两类看差异,思路会清楚很多。
索引里多出来的那一类
参数与变体地址
追踪参数、会话 ID、排序与筛选参数、分页参数,都是常见来源。这类地址被收录,往往是因为站内有链接直接指向它们,或者外链带进来的。
处理时不要一刀切全封。先看这些参数页有没有带来实际访问:有流量的保留并加规范指向,没流量的用 robots 规则或 canonical 收敛。一次改完容易误伤,分批处理更稳。
历史遗留地址
换过域名、调整过目录结构、上线过测试域名,索引里都可能还留着旧地址。抽查几条,看它们现在返回什么状态:
- 301 指向新地址的,属于过渡期正常现象,等抓取周期跑完即可;
- 返回 200 的,说明新旧内容并存,需要决定保留哪一版;
- 返回 404 但仍有索引的,一般会随时间自然退出。
站内根本不该存在的页面
站内搜索结果页、空结果页、已下架但仍可访问的页面,也常出现在索引里。先确认它们是主动放出的,还是被外部链接带进去的,两种情况的处理方式不一样。
站内多、索引少的那一类
新页面还没轮到
刚上线几天的页面没进索引,多数是正常排队。这时候重点是检查它有没有入口,而不是反复提交。
入口太深或内链太少
点击深度深、几乎没有内链指向的页面,抓取频率天然偏低。补几个站内入口,通常比反复推送更有效。
低质量的模板页
批量生成的标签页、归档页、组合筛选页,索引往往只收其中一部分,甚至完全不收。这类页面要按用途判断:有独立价值的保留,只是拼参数的考虑合并或收敛。
被自己挡住了
robots.txt 屏蔽、页面上的 noindex、canonical 指向了别的地址,都会让页面进不了索引。这种情况先自查配置,再怀疑搜索引擎。
对账之后怎么处理
不要因为总数不匹配就批量提交 URL。先按用途把页面分组:
- 核心内容页:补齐内链入口,清掉误加的屏蔽和错误规范;
- 列表与聚合页:按实际价值决定保留范围,不必全部争取;
- 功能性页面:登录、购物车、站内搜索,通常不需要出现在索引里。
索引数量和站内页面数对不上,多数时候不是被惩罚,而是口径不同,加上一批本该收敛的 URL 还在飘。
记录与复查
对账不用天天做。每个季度抽一次,记录三个数字:站内可索引页面数、索引估算值、差异的主要来源。看几次之间的趋势,比盯单次结果更能说明问题。差异来源稳定,说明站点结构没大变动;某一类突然变多,才是需要跟进的地方。