把多个入口页集中部署在一台服务器、一个 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 级别的动作,但能不能被稳定抓到,取决于服务器这一层的响应质量。把入口页放在一起本身没问题,前提是每个域名都能独立、及时地返回自己的内容。