網站收錄

重定向跳了几跳之後:收錄核對先看蜘蛛最终落在哪個地址

改版、換域名或調整栏目结构後,站内往往留下一串跳轉。從用戶角度看地址栏最终變成新地址就没事了,但蜘蛛要沿着每一跳走一遍。核對收錄时,先確認蜘蛛最终落在哪個地址、那一跳返回什么狀態碼,再判断問题出在抓取路径還是頁面本身。

網站收錄

重定向跳了几跳之後:收錄核對先看蜘蛛最终落在哪個地址

改版、換域名、調整栏目结构之後,站内常常會留下一串跳轉。從用戶角度看,浏览器地址栏最终會變成新地址,体驗没什么問题;但從收錄角度看,蜘蛛要沿着每一跳走一遍,最终的地址才有机會進入索引。核對收錄时如果只盯着舊地址,很容易得出错誤结论。

先分清:跳轉是被抓取的過程,不是被收錄的结果

一個 301 或 302 本身也是蜘蛛要抓取的 URL。它抓到這個响應,知道该去下一個地址,再發起一次請求。整條鏈走完,只有最终的 200 頁面才可能被索引。所以出現“舊地址還在索引里”或“新地址没動静”时,先確認蜘蛛到底停在哪一跳,比反复提交新 URL 更有用。

四類常见的跳轉問题

多跳鏈:A → B → C

最常见的是改版分几次做,每一层都加了一條規則,最後形成三跳甚至更長。多跳不一定被判為错誤,但會消耗額外的抓取配額,也让狀態判断變得模糊。核對时把鏈條完整列出来,能合並的就直接指向最终地址。

跳到不相關的地址

栏目頁關停後统一跳到首頁,這是省事的做法,但首頁和原頁面主题不一致,蜘蛛和用戶都拿不到對應内容。這類地址既不會被当作有效的替代版本,也容易長期停留在索引里。更稳妥的是跳到最接近的上层栏目或同類頁面;确實没有對應内容,就让它返回正常的 404。

软跳轉:JS 或 meta refresh

有些跳轉不是通過 HTTP 狀態碼完成,而是靠頁面内的脚本或 meta refresh 實現。這種頁面返回的仍然是 200,蜘蛛會把它当成一個正常頁面處理,索引里也可能保留它。核對时看到狀態碼是 200 而不是 3xx,就要留意是不是软跳轉在起作用。

循环與断鏈

規則寫错时會出現 A → B → A,或者跳轉目标本身已经 404。前者让蜘蛛反复绕圈,後者等于把舊地址的價值送進死胡同。這两類問题在日誌里通常表現為同一批地址被反复請求。

一套可执行的核對顺序

  1. 抽取一批样本 URL,用带跟随跳轉的請求工具看完整鏈路和最终狀態碼。
  2. 记錄每一跳的响應碼、目标地址、跳轉類型是永久還是临时。
  3. 確認最终地址返回 200,並且没有被 robots.txt 屏蔽、没有加 noindex。
  4. 確認最终地址自身規范,canonical 指向自己,而不是指向鏈條中的中間地址。
  5. 隔一段時間再抽查同一批样本,看鏈路是否稳定。

第三步经常被忽略:跳轉規則改對了,最终地址却带着 noindex 或者被 robots.txt 挡住,结果依然是進不了索引。

收敛时可以做的几件事

  • 把多跳鏈压成一跳,直接指向最终地址。
  • 更新站内連結、導航和 sitemap,让蜘蛛不必先经過舊地址。
  • 临时跳轉確認稳定後改成永久跳轉,减少反复判断。
  • 定期掃一遍全站跳轉規則,清掉指向 404 的死鏈和循环。
跳轉正常只是必要條件,不代表最终頁面一定被收錄。頁面质量、内容重复程度、站点整体情况都會影响结果,核對时把這几层分開看。

把“跳轉鏈走通”和“最终頁面被收錄”当成两件事,核對的时候就不會把功夫花错地方。