做站点运营的人经常會做一件事:用 site 指令看一眼收錄數字,再和自己後台的頁面總數比一比,發現两邊差得离谱,然後開始怀疑站点出了問题。其實這两套數字本来就不是一回事,直接相减没有意义。真正有用的是把差异拆開,看多出来的那部分是什么,少掉的那部分又是什么。
對帳前先统一口径
site 查询返回的數字只是估算,會随查询词、地区、時間点波動,不能当成精确的库存表。所以對帳之前,先明确自己這邊“站内頁面”指什么。
- 只算正式域名下的地址,測試环境、预览地址先排除;
- 只算返回 200 且有實际正文内容的 HTML 頁面;
- 參數變体、大小寫變体、结尾斜杠變体先归到一個主地址上;
- 已下线的舊地址單獨列一份,不混進總數。
口径不统一,第一步就會把自己绕進去。理清之後再分两類看差异,思路會清楚很多。
索引里多出来的那一類
參數與變体地址
追踪參數、會话 ID、排序與篩選參數、分頁參數,都是常见来源。這類地址被收錄,往往是因為站内有連結直接指向它們,或者外鏈带進来的。
處理时不要一刀切全封。先看這些參數頁有没有带来實际訪問:有流量的保留並加規范指向,没流量的用 robots 規則或 canonical 收敛。一次改完容易誤伤,分批處理更稳。
歷史遗留地址
換過域名、調整過目錄结构、上线過測試域名,索引里都可能還留着舊地址。抽查几條,看它們現在返回什么狀態:
- 301 指向新地址的,属于過渡期正常現象,等抓取周期跑完即可;
- 返回 200 的,說明新舊内容並存,需要决定保留哪一版;
- 返回 404 但仍有索引的,一般會随時間自然登出。
站内根本不该存在的頁面
站内搜尋结果頁、空结果頁、已下架但仍可訪問的頁面,也常出現在索引里。先確認它們是主動放出的,還是被外部連結带進去的,两種情况的處理方式不一样。
站内多、索引少的那一類
新頁面還没轮到
刚上线几天的頁面没進索引,多數是正常排队。這时候重点是检查它有没有入口,而不是反复提交。
入口太深或内鏈太少
点击深度深、几乎没有内鏈指向的頁面,抓取频率天然偏低。补几個站内入口,通常比反复推送更有效。
低质量的模板頁
批量生成的标簽頁、归档頁、组合篩選頁,索引往往只收其中一部分,甚至完全不收。這類頁面要按用途判断:有獨立價值的保留,只是拼參數的考虑合並或收敛。
被自己挡住了
robots.txt 屏蔽、頁面上的 noindex、canonical 指向了別的地址,都會让頁面進不了索引。這種情况先自查配置,再怀疑搜尋引擎。
對帳之後怎么處理
不要因為總數不匹配就批量提交 URL。先按用途把頁面分组:
- 核心内容頁:补齐内鏈入口,清掉誤加的屏蔽和错誤規范;
- 列表與聚合頁:按實际價值决定保留范围,不必全部争取;
- 功能性頁面:登入、购物车、站内搜尋,通常不需要出現在索引里。
索引數量和站内頁面數對不上,多數时候不是被惩罚,而是口径不同,加上一批本该收敛的 URL 還在飘。
记錄與复查
對帳不用天天做。每個季度抽一次,记錄三個數字:站内可索引頁面數、索引估算值、差异的主要来源。看几次之間的趋势,比盯單次结果更能說明問题。差异来源稳定,說明站点结构没大變動;某一類突然變多,才是需要跟進的地方。