搜尋抓取

Sitemap 與内鏈的分工:两條 URL 發現路径怎样配合

蜘蛛發現 URL 主要靠内鏈和 Sitemap 两條路径,两者作用不同,配合不好會拆分抓取。本文說明各自擅長什么、地址不一致时的常见問题,以及一份可执行的配合做法與定期核對清單。

搜尋抓取

Sitemap 與内鏈的分工:两條 URL 發現路径怎样配合

蜘蛛發現一個新 URL,通常只有两條路:顺着頁面上的連結爬過去,或者讀站点提供的 Sitemap。很多人把两者当成二選一,其實它們承担的是不同工作,配合不好时反而會互相拖累。

两條路径各自擅長什么

内鏈反映的是站点结构和重要性排序。蜘蛛從一個連結進入頁面,同时也在讀取這個頁面被谁指向、處在什么位置。新頁面發布後,只要在相關栏目或文章里加一條連結,被發現的速度往往比等 Sitemap 更快。

Sitemap擅長的是批量和结构化。它能在不增加頁面連結的前提下,把成百上千個 URL 一次交出去,還能附上最後修改時間,帮助蜘蛛判断哪些内容值得重抓。但它只是一份候選清單,不代表蜘蛛必须去抓。

Sitemap 告诉蜘蛛“這里可能有内容”,内鏈告诉蜘蛛“這里值得優先看”。两者缺一個,URL 發現都會變慢。

两條路打架时的三種常见情况

Sitemap 里有,内鏈里没有

這類 URL 往往就是孤岛頁面。蜘蛛可能通過 Sitemap 抓到一次,但因為没有任何内鏈指向,後續重抓和權重传递都很弱。如果某個頁面長期只有 Sitemap 一條入口,比較稳妥的做法是從相關栏目、上下篇或专题頁补一條連結過去。

内鏈里有,Sitemap 里没有

通常不算問题。只要頁面能被正常爬到,Sitemap 缺一條不影响發現,只是少了最後修改時間這個辅助信号。真正需要担心的是反過来,把 Sitemap 当成唯一入口。

同一個頁面,两邊地址不一样

带追踪參數、大小寫不一致、结尾斜杠不同、http 與 https 混用,都會让 Sitemap 和内鏈指向两個地址,抓取被拆成两份。检查时把 Sitemap 中的 URL 和頁面里的實际連結做一次對照,差异列表通常不會太長,但值得清理。

一份務實的配合做法

  1. 新頁面發布时,先在站内加至少一條從相關栏目指向它的連結,位置尽量靠近正文或列表主体,而不是只放在頁脚。
  2. Sitemap 只保留返回 200、canonical 指向自身的 URL,重定向、參數頁、已下线頁面及时移除。
  3. 内容有實质更新时同步修改最後修改時間,不要每次生成都刷新全部時間戳。
  4. 定期把 Sitemap 里的 URL 和抓取日誌對照一次,找出“提交了但几乎没被抓”和“抓了但狀態碼不對”的两類頁面。

需要定期核對的三件事

  • Sitemap 文件本身的抓取频率和返回狀態,文件讀不到,後面都無從谈起。
  • Sitemap 中 URL 的實际抓取比例,比例異常低时先查是不是被規則拦截或地址寫错。
  • 内鏈中的断点,連結指向 404 或重定向时,蜘蛛走到這里就停住了。

別把 Sitemap 当许愿池

Sitemap 能提高 URL 被注意到的概率,但不承诺收錄,也不承诺排名。它的價值在于把站点结构讲清楚,让蜘蛛少走弯路。真正被反复走過的抓取路径還是由站内連結铺出来的,Sitemap 更像是给這條路补上标注和索引。

把两條路径對齐——Sitemap 里的地址和内鏈指向的地址一致,重要頁面两邊都不缺——URL 發現通常會稳定很多。