很多站点把 URL 發現理解成「把地址递出去就行」,于是 Sitemap 越寫越長,内鏈却越来越浅。實际抓取中,蜘蛛對不同入口的信任程度並不相同:它更愿意沿着已有的抓取路径往前走,而不是每次從一份清單里重新挑選。
内鏈:預設的、最稳的入口
對绝大多數站点来说,内鏈是蜘蛛發現新 URL 的主要来源。原因很直接——連結出現在頁面里,就意味着它所在頁面已经被抓取、被解析過,蜘蛛沿着這條邊走,成本最低。
- 連結要真實出現在 HTML 里,懒加载、折叠後才渲染的連結不一定進入当次抓取队列;
- 锚文本與上下文要能說明目标頁主题,纯图标或「点击這里」的連結信息量很低;
- 同一目标頁的入口不必多,但至少要有一條從列表頁或聚合頁直達的路径;
- 導航、面包屑、相關阅讀属于稳定入口,比正文里的偶發連結更值得维護。
内鏈的問题通常不是「有没有」,而是「路径是否稳定」。改版、換模板、調整栏目结构,都可能悄悄切断某條邊。定期從首頁出發做一次路径抽样,比盯着 Sitemap 的條目數量更有意义。
Sitemap:批量补充,不负责排序
Sitemap 的價值在于把散落在站点各處、内鏈难以覆盖的 URL 一次性交出去,尤其是歷史頁、深层頁和带參數的頁面。它不保證被抓取,也不代表優先級——蜘蛛仍會结合内鏈與站点整体质量来决定抓谁。
- 只放規范地址,跳轉頁、noindex 頁不必進入;
- lastmod 要和真實更新時間一致,長期不更新却频繁改時間,會削弱這個字段的參考價值;
- 分片保持單文件規模可控,索引文件能正常訪問;
- Sitemap 本身要能被稳定抓取,返回 200 且内容完整,不能出現截断。
外部連結:偶然但真實的發現通道
外鏈带来的抓取往往不規律,但它能绕開站内路径的限制,让一個孤岛頁被看见。對外鏈的態度可以是「不依赖、不排斥」:正常的引用、分享、合作連結即可,不必刻意堆量。真正需要留意的是連結指向的地址是否可訪問、是否與站内規范地址一致——指向 404 或跳轉鏈的外鏈,等于一次無效的發現。
服務器稳定性是所有入口的前提
無论入口来自哪里,抓取最终都要落到一次 HTTP 請求上。响應時間、超时率、5xx 比例,决定了蜘蛛愿意在這個站点上花多少時間。稳定性差的时候,增加入口數量並不能提升發現效率,反而可能让抓取预算分散到失敗請求上。
一個可执行的核對顺序
- 先看日誌,確認新 URL 是否被請求過,以及首次請求来自哪條路径;
- 再看内鏈,從首頁或列表頁抽样几條到目标頁的路径,驗證是否可達;
- 然後核對 Sitemap,確認目标 URL 在列、地址規范、lastmod 合理;
- 最後检查服務器响應,排除超时與错誤碼带来的干扰。
發現不等于收錄。入口的作用只是让蜘蛛知道「這里有個地址」,能不能被抓取、能不能被收錄,最终仍取决于内容本身與站点整体质量。