收錄問题的麻烦之處在于,它很少一次暴露完整:今天發現一批頁面没進索引,明天觉得另一批 URL 參數太乱,後天改版又把舊連結翻出来。如果每次都临时排查,同样的判断會重复做好几遍,结论也留不下来。把 URL 当成一份可以長期维護的清單来管,比出了事再去查要省力得多。
台帳要回答的不是“收錄了多少”,而是“该不该收”
收錄數量本身參考價值有限。索引里多几十個參數頁,未必是坏事;少几個核心栏目頁,才是問题。台帳的作用是先把“你希望被收錄的 URL”寫清楚,再拿實际索引狀態去對,這样差异才有意义。寫清單的過程本身也會暴露問题:有些 URL 当初為什么上线、頁面上是否有入口指向它、會不會和其他頁面内容重复,往往寫的时候才發現没人说得清。
一條 URL 记錄哪些字段
- URL 本身:统一大小寫、结尾斜杠、參數顺序,寫成規范形式。
- 頁面類型:栏目頁、文章頁、列表頁、參數頁、附件頁等,類型决定後續的處理方式。
- 主要入口:這條 URL 從哪個頁面可以点到,入口决定它能否被發現。
- 目标狀態:希望被收錄、允许被抓取但不强求收錄、不希望進入索引,三選一。
- 目前狀態:已發現未抓取、已抓取未索引、已索引,按最近一次核對填寫。
- 核對時間與备注:改過 canonical、加過 noindex、做過跳轉,都记一筆,方便回溯。
按價值分层,比全部一视同仁更現實
站点規模上去以後,逐條盯着 URL 不現實。按层管理,判断會快很多。
第一层:核心頁
首頁、主要栏目、重点内容頁。這一层要求最嚴:URL 唯一、内鏈可達、内容完整、狀態碼正常。發現問题时優先處理,也值得定期人工抽查。
第二层:長尾與聚合頁
标簽頁、篩選頁、站内搜尋结果頁、分頁。這一层的關键不是“能不能被收錄”,而是“是否值得被收錄”。有獨立检索價值、内容不重复的,可以放行;只是同一批内容換個排序的,用 canonical 或參數規則收敛,別让它占着抓取次數。
第三层:可丢弃頁
測試頁、過期活動頁、临时參數组合。這一层不需要精细管理,明确處理方式即可——该 301 的跳轉,该 410 的直接下架,別長期挂着返回 200,让爬虫反复来抓。
例行核對可以固定成几步
- 抽样:每层各抽若干條 URL,核心层抽得多一些。
- 看可達性:狀態碼、跳轉鏈、robots 規則、頁面是否要求登入或依赖脚本渲染。
- 看規范性:是否存在带參數、大小寫或斜杠不同但内容相同的兄弟 URL,canonical 指向是否一致。
- 看索引狀態:把後台的索引报告和搜尋语法交叉核對,注意两者口径不同,不必强求數字一致。
- 记錄變化:把這次和上次的结论對比,只看新出現的問题。
几個常见的坑
- 把爬虫日誌里的訪問次數当成收錄信号。爬虫来過,不代表頁面進了索引,两件事要分開看。
- 台帳只记 URL 不记目标狀態,最後變成一堆地址清單,没人知道该拿它做什么。
- 屏蔽規則改了却不更新台帳,半年後重新排查时,判断依據還是舊的。
- 只维護新頁面不管下线頁面,索引里残留的舊地址越积越多。
台帳不能保證頁面被收錄,它的價值在于让判断有依據、让排查有起点。真正影响结果的,仍是頁面本身是否值得被展示,以及 URL 與連結结构是否清楚。
如果站点頁面不多,一張表格就够了;頁面規模大时,至少把核心层單獨维護一份。開始时不必追求完整,能覆盖住你确實希望被搜到的那些 URL,就已经比临时救火强很多。