两個容易被混在一起的概念
很多站長看日誌时會有一個疑問:蜘蛛每天都来,訪問次數也不少,可站内還是有大片 URL 從来没被爬過。這種情况通常不是“蜘蛛没来”,而是抓取需求大于抓取容量。抓取需求指的是站点暴露给搜尋引擎、希望被處理的 URL 總量;抓取容量指的是搜尋引擎愿意分给你這個站点的抓取次數上限。两者不是一回事,站点規模、更新频率、服務器表現都會影响後者。
当需求長期超過容量时,表現就是:新頁面發現得慢、老頁面更新不及时、部分 URL 長期停留在“已發現未抓取”的狀態。這时候單纯增加内鏈、多提交 Sitemap 未必有用,因為入口變多了,池子還是那么大。
先判断瓶颈在哪一侧
- 偏向容量受限:日誌里蜘蛛訪問次數長期平稳甚至下降,抓取时段集中在少數几個小时,5xx、429、超时占比偏高,頁面响應時間波動大。
- 偏向需求過剩:蜘蛛来得勤、抓得也顺,但抓的多是篩選頁、參數頁、重复列表頁,真正需要更新的内容頁很少被碰。
- 两者並存:常见于内容量大、模板生成頁面多、服務器资源又比較紧張的站点。
判断方法不复杂:把一段時間内的日誌按 URL 類型分组,看蜘蛛把抓取次數花在了哪几類頁面上,再和 Sitemap 里你真正在意的地址做對照。差距出現的地方,基本就是問题所在。
扩容:让服務器先扛得住
抓取容量不是靠申請得来的,它更多是搜尋引擎根據站点表現给出的结果。要让它往上走,最先要處理的是稳定性:
- 减少 5xx 和超时。哪怕是高峰期的短暂报错,也會让蜘蛛放缓节奏。
- 控制响應時間,避免同一批 URL 的响應時間忽快忽慢。
- 少用多跳重定向,每一次跳轉都占一次抓取名額。
- 對蜘蛛的請求不要做過于嚴格的频率限制,誤伤會把正常抓取挡在门外。
這些改完不一定立刻见效,但它們是容量能否提升的前提。
减需:把不值得爬的 URL 收起来
多數站点的抓取需求是虚高的。以下几類 URL 经常占掉大量名額,却几乎没有價值:
- 站内搜尋结果頁、多條件组合的篩選頁。
- 排序、翻頁參數产生的近似重复地址。
- 带追踪參數的分享連結、會话參數。
- 已经下线但仍在被内鏈指向的歷史頁面。
處理方式可以分轻重:能合並的做归一化,能收敛的用 robots 規則或頁面級 noindex,能從内鏈里摘掉的尽量摘掉。Sitemap 只放你希望被處理、且确實有價值的地址,把它当成一份優先級清單,而不是把全站都塞進去。
内鏈结构决定抓取路径的效率
容量有限时,路径長短直接影响结果。蜘蛛從一個入口出發,跳轉次數越多,能覆盖的 URL 越少。把重要栏目放在導航或首頁的固定位置,让核心内容距离入口近一些;分類頁、标簽頁之間建立清晰的上下級關系,避免大量互相指向的循环;列表頁分頁做成可走的連結序列,而不是只靠脚本加载。這些都是不增加服務器负担的調整。
抓取優化很少是單点問题。容量、需求、路径三者互相牵制,只調其中一項,往往看不到明顯變化。
用一份简單的對照表跟踪效果
建议每周做一次對照:Sitemap 提交的 URL 數、日誌里被實际爬到的 URL 數、其中内容頁占比、平均响應時間、错誤狀態占比。几周下来的趋势比單日資料更有參考價值。如果被爬 URL 總數没變,但内容頁占比上升,說明减需起效了;如果訪問次數和响應時間同步改善,說明容量侧在恢复。
需要提醒的是,抓取节奏的調整由搜尋引擎决定,站方能做的是把自己的部分做扎實:结构清楚、地址干净、服務器稳定。剩下的交给時間。