蜘蛛在站内主要的行走方式是顺着連結走。一個 URL 如果在站内没有任何可点击的連結指向它,就很难被「顺路」经過,這類頁面通常被叫作孤儿頁面。它不一定打不開,也不一定是错頁,只是缺少一條能把蜘蛛带過去的路径。
在蜘蛛眼里,孤儿頁面意味着什么
常規的 URL 發現路径是:入口頁到列表頁,再到詳情頁、相關推荐,一层一层往下走。孤儿頁面切断了這條鏈條,蜘蛛只能靠几種間接渠道知道它存在:Sitemap 里的声明、站外連結、搜尋後台的手動提交,或者從日誌里看到它曾被訪問過。
問题在于,這些渠道提供的是「這個 URL 存在」的信息,而不是「這個 URL 值得抓」的判断依據。缺了站内連結,蜘蛛很难评估它在站点结构中的位置和重要性,重新抓取的频率通常也會低很多。
孤儿頁面常见的几種来源
- 栏目改版或列表分頁調整後,舊頁面只留在了 Sitemap 里;
- 後台生成的活動頁、专题頁、商品詳情頁没有挂到任何列表;
- 分頁列表只放出前几頁的連結,後面几頁只能靠翻頁參數訪問;
- 篩選、排序參數拼出的 URL 被外鏈或分享連結带出去;
- 測試頁、临时頁、备用域名下的頁面被收錄後又失去入口。
這些頁面往往不是刻意藏起来的,而是结构變動时被顺手漏掉的。定期做一次站内爬取,把爬到的 URL 和日誌、Sitemap 里的 URL 做對比,通常能發現一批這样的缺口。
Sitemap 能兜底,但不等同于内鏈
Sitemap 的作用是告诉蜘蛛「這里有哪些 URL」,它不能替代站内連結。一個只出現在 Sitemap 里、站内没有任何入口的頁面,蜘蛛可能會抓一次,但抓完之後缺少繼續訪問的路径,下次再来的時間就很难保證。把 Sitemap 当成孤儿頁面的長期解决方案,效果通常有限。
更現實的做法是给重要頁面补上站内入口。Sitemap 负责覆盖面,内鏈负责優先級和抓取节奏,两者分工不同。
把孤儿頁面接回抓取路径
- 先確認清單。用站内爬取工具抓一遍全站,得到「站内有連結可達」的 URL 集合;再和 Sitemap、服務器日誌里的 URL 集合對比,差集就是需要關注的孤儿頁面。
- 判断值不值得接回来。有稳定搜尋需求、有轉化價值的頁面優先處理;纯參數组合、重复内容、測試頁可以考虑清理或加 noindex,而不是硬塞内鏈。
- 补上自然的入口。相關文章、同栏目推荐、面包屑、聚合頁、列表頁的「更多」入口,都是常见位置。锚文本寫清楚頁面的主题,不要用「点击這里」。
- 控制层級。從首頁出發,尽量让重要頁面在三到四次点击内可達。层級太深,即使有連結,蜘蛛走到的概率也會下降。
- 观察抓取變化。补完内鏈後,在日誌里看這些 URL 的首次抓取時間和後續抓取频率,同时在搜尋後台留意「已發現但未编入索引」的數量變化。
补入口之後,留意服務器這一端
新增内鏈會带来新的抓取請求。如果一次补了几千個入口,抓取量可能在短期内明顯上升。這时候要留意服務器的响應時間和错誤率,避免因為 5xx 或超时把抓取节奏打乱——蜘蛛遇到持續错誤會降低抓取频率,前面补的入口效果也會被抵消。分批次調整、观察几天再繼續,通常比一次性铺開更稳妥。
几個容易踩的坑
- 把所有孤儿頁都堆到首頁或全站頁脚,連結數量暴涨但實际價值分散;
- 只提交 Sitemap,不加内鏈,然後期待抓取频率自然提升;
- 孤儿頁内容本身和已有頁面高度重复,接回路径後反而产生新的重复問题;
- 用脚本批量生成内鏈,锚文本和上下文與頁面無關,蜘蛛讀不出連結指向什么。
孤儿頁面的核心問题不是「蜘蛛找不到」,而是「找到了也没有路径繼續走」。补一條合理的内鏈,往往比反复提交 Sitemap 更有效。
總的来说,把孤儿頁面接回抓取路径,靠的是结构上的入口,而不是一次性的提交動作。先把清單整理清楚,再按價值排序补連結、控层級,剩下的交给日誌和搜尋後台去驗證。