搜尋抓取

孤岛頁面:站内没有内鏈入口的 URL 怎么被發現

站内没有任何内鏈指向的 URL,通常只能靠站点地图或外部連結被發現。本文說明孤岛頁面的常见成因,怎么用内鏈爬行结果和站点地图做差集来核對入口,区分值得补連結的頁面與應该收敛或下线的頁面,並给出一套可以定期执行的维護节奏。

搜尋抓取

孤岛頁面:站内没有内鏈入口的 URL 怎么被發現

多數站長把注意力放在站点地图和提交渠道上,忽略了更基础的一件事:搜尋蜘蛛在站内移動靠的是連結。如果一個 URL 在整站里没有任何一個可点击、可爬取的 a 标簽指向它,它就成了孤岛頁面——能不能被發現,基本靠运气。

哪些情况會造出孤岛頁面

  • 商品或内容已经下架,頁面仍然返回 200,只是從所有列表里被移除了;
  • 内鏈改版时删掉了舊入口,但 URL 本身依舊可以訪問;
  • CMS 自動生成的聚合頁、作者頁、日歷頁,只在站点地图里出現;
  • 分頁被“加载更多”替代後,第二頁之後的地址只剩下接口調用;
  • 专题頁刚上线,還没有任何頁面指向它;
  • 外部渠道带来的連結(友情連結、社媒、广告落地頁)指向站内,站内却没有出口。

先確認它到底有没有内鏈入口

判断方法並不复杂:從首頁出發,只跟随頁面里的 a 标簽做一次内鏈爬行,把能走到的 URL 全部记錄下来,再和站点地图、服務器日誌里出現過的 URL 做差集。差集里的那部分,就是站内找不到入口的頁面。

測試时把脚本關掉再跑一遍更接近真實情况,因為不少爬虫不會执行 JS,脚本渲染出来的連結在它們眼里等于不存在。同一個 URL 在内鏈爬行里走不到,却在日誌里频繁出現,那它大概率是靠站点地图或外部連結被發現的。

有多少孤岛頁面值得救

不是每個没有入口的 URL 都值得补連結,先分個類:

  1. 有搜尋需求、有轉化價值的頁面,补入口;
  2. 内容重复、參數组合、篩選结果的頁面,做收敛或 canonical,別让它單獨漂流;
  3. 确實没用的頁面,用 410 或 301 指向最近的替代頁,不要留着返回 200 的空壳。

把一批低價值頁面硬塞進導航或頁脚,只會稀释内鏈權重,也让搜尋蜘蛛的来訪次數花在没意义的地址上。

补入口的几種實际做法

  • 面包屑里补上所属分類,让层級關系重新成立;
  • 相關推荐、上一篇下一篇、同系列内容列表;
  • 分類頁和标簽頁里保留一個稳定入口,而不是只在活動期露出;
  • 站点地图作為兜底:它解决的是“告诉搜尋引擎有這個地址”,不是替代内鏈;
  • 舊文更新时顺手补一條指向相關内容的内鏈,成本最低。

入口必须是标准連結,用 href,不要用 onclick、javascript: 跳轉,或者只有表單提交才能到達的按钮。同时注意层級:從首頁到目标頁如果超過四五跳,實际被走到的机會會明顯下降。

维護节奏怎么安排

站点改版、批量下架、更換 CMS 之後,内鏈结构最容易出現断层,這时候跑一次核對最有效。平时可以按季度做一遍,把站点地图與實际可爬連結集合的差集逐步缩小。如果日誌里長期出現一些從没在内鏈爬行结果里见過的 URL,值得單獨看一眼:它們要么靠站点地图,要么靠外部連結被發現,任其發展就會變成没人管的長期孤岛。

站点地图和主動推送解决的是“告诉搜尋引擎有這個地址”,内鏈解决的是“让搜尋蜘蛛在站内自然走到它”。前者是补充,後者才是長期稳定的路径。

不要把孤岛頁面当成技巧

有人會故意让大量頁面只存在于站点地图里,期望它們被單獨抓取。這種做法短期可能看到一些抓取记錄,但頁面没有内鏈支撑、缺少上下文,更新回訪和内容價值都很难维持。更稳妥的思路仍然是:想让一個 URL 被持續發現,就给它一個站内入口。