核对抓取限制,核心是确认搜索引擎的抓取工具是否被服务器、robots规则或页面代码挡住,以及挡住的范围是否符合你的预期。不要只看robots.txt一行文字,要同时对照服务器日志、HTTP响应码和页面源码三处证据,才能判断限制是误伤还是有意设置。
已有页面或项目出现收录变慢、快照不更新、部分栏目长期不出现时,先收集三类观察结果,而不是立刻改文件。
Disallow路径,以及是否误写了/导致全站被挡。<head>中是否出现noindex,以及HTTP响应头中是否带有X-Robots-Tag。这三处是独立证据。robots.txt允许抓取,不代表页面没有noindex;日志里有请求,也不代表返回的是200。观察阶段只记录事实,不做修改。
把观察结果按抓取链路分层判断,可以避免改错位置。
Disallow。注意规则按最长匹配生效,Disallow: /会挡住全站,而Allow并不能覆盖所有情况。noindex,或者返回X-Robots-Tag: noindex。这种情况下抓取正常,但索引会被移除。nofollow,导致抓取工具难以发现。这属于发现限制,不是抓取限制,但现象相似。判断结果时区分“可能原因”和“已经定位的原因”。例如日志里出现403,可能是防火墙拦截,也可能是源站临时故障,需要结合响应时间、路径分布和规则变更记录进一步确认,不能只凭一个现象下结论。
确认限制层级后,只改对应位置,并记录修改前状态,便于复查。
curl -I检查目标URL返回码,确认是200而不是403。Disallow路径,保留必要的后台、搜索结果页限制。修改后确认文件可正常访问且语法正确。noindex,检查X-Robots-Tag响应头是否同步去掉。仅改HTML而响应头仍带noindex,限制依然存在。nofollow。处理时一次只改一类限制。同时改动robots、响应头和链接,会让后续复查无法判断哪项改动起了作用。
修改后不要凭感觉判断,按下面检查项逐条核对:
X-Robots-Tag。Disallow覆盖。noindex。复查要放在相同条件下比较。搜索需求本身有季节波动,数据采集口径也可能变化,因此一次改动前后对比只能作为参考,不能承诺固定见效时间。如果修改后日志仍无请求,先确认抓取工具是否已知晓新规则,再检查是否存在其他层级限制。
下一步:选一个当前收录异常的具体URL,按上面五条检查项逐条记录现状,再决定改哪一层。