如何建博客:怎样核对抓取限制

📍 WDQWDWQD987AAAAA:216.73.216.184
📱 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
🔗 /762a28c7c1a9.html
📄

如何建博客:怎样核对抓取限制

核对抓取限制,核心是确认搜索引擎能否正常访问你的博客页面。最直接的方法是查看服务器访问日志中搜索引擎爬虫的请求记录,再用 robots.txt 测试工具和页面抓取工具交叉验证。如果日志里爬虫请求频繁但页面长期不收录,问题通常出在 robots.txt 屏蔽、meta 标签限制或服务器返回异常状态码,而不是内容质量。

从一个假设例子看清核对流程

假设你为一个三人协作的博客项目搭建了新站点,编辑负责写稿,技术负责部署,你负责SEO。上线两周后,编辑反馈文章在搜索结果里找不到。此时不要急着改内容,先按下面顺序核对抓取限制。

  1. 打开服务器访问日志,筛选爬虫的 User-Agent,看它最近有没有请求过文章页。有请求说明抓取通道是通的,问题可能在索引环节;没有请求,继续查下一步。
  2. 用 robots.txt 测试工具输入文章 URL,确认是否被规则屏蔽。常见错误是写了 Disallow: / 却以为只屏蔽了后台目录。
  3. 查看页面源代码中的 meta 标签,确认没有 noindex。多人协作时,测试环境的 noindex 经常被一起部署到正式环境。
  4. 用抓取工具请求该 URL,看返回状态码。200 为正常,301 和 302 要确认跳转目标是否可抓取,403 和 503 说明服务器在拒绝爬虫。

这个例子里,如果日志显示爬虫从未访问文章页,而 robots.txt 测试结果显示被屏蔽,那就可以定位为规则问题,直接修改规则并重新提交即可。如果日志有请求、robots.txt 放行、meta 也正常,那抓取限制就不是主因,应转向索引和内容层面排查。

robots.txt 的核对要点

robots.txt 放在网站根目录,对全站生效。核对时注意三点:规则是否误伤了文章目录;是否区分了不同爬虫的 User-Agent;是否引用了正确的 sitemap 地址。多人协作时,建议把 robots.txt 纳入版本管理,每次改动都记录原因和负责人,避免有人临时屏蔽测试目录却忘了恢复。

需要说明的是,robots.txt 只是爬虫自愿遵守的约定,它限制的是抓取,不等于禁止索引。如果页面已被其他来源链接,仍可能出现在结果中。要真正阻止索引,需要配合 meta 标签或 HTTP 响应头。

meta 标签与 HTTP 头的检查方法

在浏览器中打开文章页,查看源代码,搜索 noindex 和 nofollow。如果使用了模板系统,要确认这些标签是否被条件判断控制,比如只在预览模式输出。HTTP 响应头中的 X-Robots-Tag 同样能限制抓取和索引,用抓取工具的响应头面板就能看到。

常见错误是把 noindex 写在列表页模板上,结果所有文章页继承了这个设置。核对时至少抽查三篇不同时间发布的文章,确认限制标签没有随模板扩散。

服务器与状态码的判断条件

抓取工具请求页面后,重点看状态码和响应时间。持续返回 5xx 说明服务器不稳定,爬虫会降低抓取频率;返回 429 说明请求过于频繁被限流。这两种情况都属于抓取限制,但原因不同:前者要查服务器资源,后者要查防护规则是否误拦了爬虫。

另外注意 CDN 和防火墙设置。有些防护策略会拦截没有浏览器特征的请求,导致爬虫被挡在门外。核对时可以临时放行已知爬虫的 IP 段,观察日志变化,但改动前要记录原始配置,方便回滚。

多人协作下的交付清单

为了减少返工,建议每次上线前完成以下检查并留档:

把这份清单放进部署流程,由技术执行、SEO 复核,责任清晰。改动前后比较时要注意,搜索需求本身会随时间和季节波动,抓取恢复也不等于排名立刻变化,判断效果应结合多周的数据观察。

下一步,先抓取一篇未被收录的文章,按上面的顺序逐项核对,把结果记录在协作文档里,再决定是修改规则还是排查服务器。

图1 图2

nginx