把多個入口頁集中部署在一台服務器、一個 IP 上,是很多站点运营者會做的事,省事也省成本。但過一段時間常會發現:有的入口頁抓取正常,有的却很少被訪問。原因通常不在于“IP 被惩罚”,而在于同一台机器上共享的那些资源。
搜尋蜘蛛是按 URL 抓取的,不是按 IP
抓取調度基本以主机(host)和 URL 為單位。同一 IP 下的不同域名,各自有獨立的抓取节奏和配額,不會因為共用 IP 就被合並成一個站点,也不會互相“分走”抓取量。所以“同一 IP 放多個站点會被连坐”這種说法,在多數情况下並不成立。
但同一台服務器确實共享了几样東西
- 出口带宽、CPU 和磁盘 IO:訪問高峰时大家都在抢。
- 响應時間:一個入口頁慢,往往整台机器都跟着慢。
- 防火墙、WAF 和限速規則:通常按 IP 生效,不按域名细分。
- 預設站点、SSL 證书和错誤頁配置:配错就會串站。
- 日誌文件:混在一起,排查时很难按域名拆開。
這些属于工程层面的共享,不是搜尋引擎的規則,但它們會實打實地影响抓取结果。
最常见的三類現象
- 响應變慢,抓取频率下降。同机並發高时,入口頁返回時間從几百毫秒涨到几秒,搜尋蜘蛛遇到超时就降低訪問频率,新加的連結被發現的時間随之拉長。
- 配置串站,抓到重复内容。没配 SNI 或預設站点时,用 IP 直连或用未绑定的域名訪問,可能返回另一個站点的頁面。搜尋蜘蛛拿到的是張冠李戴的内容,連結解析也會跟着错位。
- 触發風控後整体被限速。某個域名被刷或被攻击,或者触發了机房层面的防護,整台机器的 IP 被限速甚至临时封禁,同机其它入口頁的抓取也會跟着中断。
更值得關注的是每個入口頁自身是否稳定
- 每個域名的入口頁是否都能返回正确的 200,並且内容是自己的。
- 訪問高峰时响應時間是否還控制在合理范围内。
- robots.txt、sitemap 是否按域名分別配置,而不是一份文件套用所有站。
- 日誌里能否按 host 区分,方便判断哪些連結真的被訪問過。
排查顺序可以參考這样几步
- 把抓取日誌按域名(host)分组,先找被訪問最少的入口頁。
- 看這些頁面的狀態碼分布:5xx、超时、403 各占多少。
- 用 IP 直连、未绑定域名各訪問一次,確認是否存在串站。
- 在模拟並發下测响應時間,看瓶颈在带宽、資料库還是程序本身。
- 如果确實是资源不够,把入口頁拆到不同机器或不同出口 IP,通常比反复調整頁面内容更有效。
抓取是 URL 級別的動作,但能不能被稳定抓到,取决于服務器這一层的响應质量。把入口頁放在一起本身没問题,前提是每個域名都能獨立、及时地返回自己的内容。