把灰度范围从1%扩到100%时,收录表现常出现一批只在全量后才暴露的例外页面。这些页面在灰度阶段被覆盖,原因通常是灰度样本偏向高权重入口、缓存命中率高,或增量抓取只触达了已常被访问的URL。要判断全量发布是否真的改变了收录条件,需要先固定一个可核对的页面样本,再逐项比对灰度与全量的差异。
不要用“整站收录数”作为灰度结论。选一个具体目录或模板生成的20到50个URL,记录每条的:是否被链接、链接层级、是否在站点地图中、返回状态码、canonical指向、是否有noindex、页面主体是否依赖客户端渲染。这个清单是后续所有判断的基准。
假设示例:某模板页在灰度中只放出首页直达的10条,全部被收录;全量后同模板的200条中,只有带内链的30条被收录,其余170条依赖站点地图。此时不能断言站点地图无效,因为灰度阶段根本没测过“仅靠站点地图”的路径。
灰度阶段URL总量小,抓取预算相对充裕,慢页面、深页面也能被轮到。全量后同一主机下URL数量骤增,抓取预算被重新分配,灰度中“表现正常”的页面可能因为响应慢或重复参数被降级处理。
核对动作:对样本中每条URL记录灰度期与全量期的平均响应时间和抓取频次(可从日志按URL聚合)。若某类页面响应时间在灰度期低于全量期,且收录率同步下降,应优先排查服务端性能与抓取预算,而不是直接改站点地图。
灰度入口页可能临时加了指向样本的链接,全量后这些链接被移除。结果是页面失去内链,只能靠站点地图被发现。此时要区分“从未被链接”和“链接被撤下”:前者需要补内链,后者要确认撤链是否有意为之。站点地图只提供发现线索,不保证被抓取或收录。
灰度常只改一个模板文件,全量时另一个模板或组件覆盖了同一字段。核对方法:对样本URL直接请求HTML,检查<link rel="canonical">和<meta name="robots">的实际输出,而不是查看模板源码。若灰度与全量的输出不一致,先定位覆盖来源,再决定改模板还是改数据层。
如果全量后为控制抓取在robots.txt中屏蔽了某目录,被屏蔽的URL不会因此从索引中消失。robots.txt限制的是抓取,不是索引移除。要真正移除,需要页面返回可索引状态之外的信号,或使用移除请求,且各搜索引擎支持情况须分别核查。
当开发、SEO、运维对“为什么没收录”有不同判断时,不要争论结论,先统一核对项:
例如,样本中10条仅靠站点地图的URL全量后未被抓取。先给其中5条补一条来自已收录页面的内链,保留另5条不变。若补链的5条在后续日志中出现请求,而另5条没有,说明发现路径是当前瓶颈;下一步应扩大内链覆盖,而不是继续调整站点地图格式。
灰度是缩小样本的验证,不是全量收录的保证。它的价值在于暴露“改动是否生效”,而不是预测全量后的抓取分配。全量发布后应重新跑一遍样本核对,重点看灰度中未覆盖的发现路径和模板分支。HTTPS、站点地图、robots.txt都不能单独保证收录或排名,它们只影响发现和抓取条件,最终是否收录还取决于页面质量、重复度和搜索引擎自身的判断。把灰度当作一次对照实验,把全量当作新的基线,才能让例外页面变成可处理的项目,而不是反复争论的猜测。