先给结论:访问量突增期间,资源压力和配置错误都会表现为抓取变慢、错误码增多、收录推进停滞,但两者的分界点在于——资源压力会随负载回落而自行缓解,且影响面通常与请求量成正比;配置错误则在负载恢复正常后依然存在,且往往只打击特定路径、特定状态码或特定抓取来源。下面用一个假设情境把判断过程走一遍。
假设某站点在一天内被大量外部链接和社交分享带火,日志里来自搜索引擎的抓取请求在两小时内涨到平时的数倍,同时新页面提交后迟迟不进入索引。运维第一反应是“服务器扛不住”,于是加带宽、加缓存。加完之后抓取速度恢复了,但新页面依然不进索引。这个反差就是关键证据:资源压力被缓解后问题仍在,说明至少有一部分现象不是资源导致的。
如果加完资源后抓取错误率同步下降、新页面也开始陆续出现,那更可能是单纯的压力问题,下一步是评估容量而不是改配置。
资源压力下的错误通常集中在超时类和时间窗相关的结果上:请求排队、响应时间拉长、部分请求被丢弃。配置错误则更“挑食”,表现为某一类 URL 稳定返回同一状态码,比如某个目录下的页面全部 403,或带参数的 URL 全部 404。
实际动作:从日志里按“路径 + 状态码 + 抓取来源”做一次交叉统计。如果某个组合的错误率接近 100%,基本可以排除偶发压力,转去检查该路径对应的规则、重写或权限设置。
在流量回落后,挑一个此前报错的 URL,用与抓取工具一致的请求头单独访问,观察返回。这一步的价值在于把“并发环境”剥离掉。
假设回放显示某分类页在低并发下返回 200,但抓取高峰期返回 503,而其他分类页全程正常,那更像是该页面自身的计算或查询开销过大,而不是全站配置写错。此时下一步应针对该页做缓存或查询优化,而不是全站改规则。
排查时容易顺手去改这几项,但它们的实际作用常被高估。robots.txt 的抓取限制不等于可靠的索引移除,被限制抓取的 URL 仍可能因外部链接出现在结果里;站点地图提交不保证收录,它只是发现渠道之一;HTTPS 也不保证安全无漏洞或排名提升。把它们当作“加速开关”去调,很容易在压力期制造新的变量,让原本能区分的两类原因混在一起。
更稳妥的顺序是:先确认错误码分布,再做受控回放,最后才动配置。每改一项,记录改动前后的同一组指标,避免同时改多处导致无法归因。
上述方法在样本量小、抓取来源单一时成立;一旦站点有多个子域、多套 CDN 规则、多种抓取来源,同一现象可能同时包含两类原因。这时要按来源和路径分段判断,而不是求一个全站结论。另外,请求量或抓取量归零本身不能证明处理正确——它也可能是抓取预算转移、来源策略调整或外部链接变化的结果,需要结合回放结果一起看。
把判断落到一个可复现的动作上:先做错误码交叉统计,再对代表 URL 做低并发回放,根据回放结果决定是扩容还是改配置,改完用同一组指标复测,这样资源压力和配置错误就不会互相掩盖。