网站不收录怎么查?状态码、robots 与 UA 三条线
上线后最难受的不是排名低,而是搜索里根本搜不到。这类问题的排查顺序很固定:先看页面返回什么状态码,再看爬虫被告知了什么,最后确认来的是不是真爬虫。
- 收录为零先查状态码:持续返回 5xx 会让爬虫降低抓取频率,而返回 200 但内容为空等于没有东西可收
- 想让一个页面尽快从索引里消失,410 比 404 更明确;不确定将来会不会恢复时就该用 404
- robots.txt 只约束自愿遵守的爬虫,写错一条 Disallow 就能把整站挡在搜索引擎之外,而用户访问完全不受影响
- UA 字符串可以随意伪造,写着 Googlebot 不代表真的是 Google,只有反查来访 IP 是否属于官方网段才可信
- noindex 与 Disallow 必须配合使用:屏蔽了抓取,noindex 就没机会被爬到,页面会一直留在索引里
#先分清是哪种「搜不到」
「搜不到」至少有三种情况,原因和改法完全不同:完全没收录、收录了但没排名、以及能收录但抓取异常。 混在一起讨论只会得出「内容不够好」这种没用的结论。
最省事的区分方法是 site:你的域名 加一两个关键词,看返回结果。
| 现象 | 一般原因 | 先查什么 |
|---|---|---|
site: 一条都没有 | 被屏蔽、状态码异常、或刚上线 | 状态码与 robots |
| 有首页但内页没有 | 内链太少、爬虫没爬到 | 内链与 sitemap |
| 有收录但搜关键词找不到 | 关键词竞争、内容相关性 | 标题与正文,不是技术问题 |
| 收录数忽高忽低 | 抓取异常、服务不稳定 | 5xx 比例与响应时间 |
#第一条线:状态码说了什么
页面返回什么状态码,决定爬虫怎么对待它 —— 这比内容质量优先得多。 内容再好,返回 503 也收不进去。
几个必须分清的状态码:
- 200:正常。但「返回 200 却是空列表 / 纯前端壳」等于没有内容可收
- 301:永久重定向。改版用它,但发错方向很难回退
- 404:资源不存在。不确定将来是否恢复时用它
- 410:资源曾经存在、现已永久删除。比 404 更快让搜索引擎移除索引
- 5xx:服务端问题。持续 5xx 会让爬虫主动降低抓取频率,恢复后需要一段时间才回升
用 HTTP 状态码 速查时有个容易混的点:301 与 302 在收到 POST 请求时可能把方法改成 GET,做 API 跳转要选 307 或 308。而 502 与 504 通常是反向代理发出的 —— 看到这两个先查代理后面的应用,别先怀疑代理本身。
「返回 200 但页面是空白」是最难发现的一类问题。单页应用如果服务端没做预渲染,爬虫拿到的就是一个空壳 HTML,里面有文字但都在 JS 里 —— 对爬虫来说等于零内容。检查办法是禁用 JavaScript 后再看源码。
#第二条线:robots 与 noindex 有没有挡住
robots.txt 的危险之处在于它只对爬虫生效,你自己访问完全正常 —— 所以写错了不会有任何提示,只会看到收录量一直上不去。 用 robots.txt 检测 可以同时做两件事:解析规则分组,以及用指定爬虫身份检测任意 URL 是否允许抓取。
规则语义比大多数人以为的细:
- 最长匹配优先:
Disallow: /admin/与Allow: /admin/public/并存时,更长的 Allow 生效 - 同长度 Allow 胜出:这是 Google 的约定
- 通配与结尾锚:
*匹配任意字符,结尾$表示到此结束,/*.pdf$只拦以 .pdf 结尾的地址 - 空值不限制:
Disallow:后面什么都没有,表示允许全部 —— 不是禁止全部 - 未命中任何规则即允许,这是默认行为
排查时按顺序确认三件事:User-agent: * 是否覆盖了目标爬虫、有没有一条 Disallow: /、Sitemap 地址是不是绝对 URL。这三条覆盖了绝大多数误伤。
Disallow 与 noindex 是两个方向:前者是「别来抓」,页面仍可能因外链出现在索引里;后者是「抓到了也别收录」,需要爬虫先抓到才生效。想彻底不让某页出现,两者要配合 —— 但先 Disallow 再指望 noindex 生效是死结,因为页面爬不到了,noindex 永远读不到。
顺便核对一次 meta 标签。用 Meta 标签生成 生成的 robots 固定是 index, follow,需要排除的页面得自己改成 noindex。它同时会检查标题描述的长度口径 —— 按像素宽度算,中文约 30 字、英文约 60 字符就会被截断。
#第三条线:来的是不是真爬虫
UA 字符串由客户端自己发送,可以随意伪造,所以「UA 写着 Googlebot」完全不能作为可信依据。 真正的验证只有一条:反查来访 IP 是否属于该搜索引擎公布的网段。
用 UA 解析 判断来访者时,先接受一个前提:它只适合做统计与适配,不能用于权限或风控。几个必然遇到、看起来像识别错误的正常现象:
- Windows 11 显示成 10/11:Win11 的 UA 里仍写着
Windows NT 10.0,微软冻结了版本号 - iPad 显示成 macOS + 桌面:iPadOS 13 之后默认请求桌面版网页,UA 与 Mac 几乎一样
- Chrome 的 UA 里也有 Safari:Chromium 保留了
Safari/537.36做兼容,判断顺序必须是先Edg/、OPR/、Chrome/再看Safari/
爬虫识别看的是 bot、spider、crawler、slurp 这类标识,能认出主流搜索引擎。但记住那句老话:UA 说自己是 Googlebot 的,可能是任何一台机器。
想确认搜索引擎真的来过,比 UA 更可靠的证据是服务端访问日志里的 IP 归属,或者搜索平台后台的「抓取统计」。UA 只能当线索,不能当证据。
#域名本身有没有问题
域名到期、状态异常、或者刚注册,都会让收录停滞,而且这些原因在网站本身完全看不出来。 用 Whois 查询 看四项:注册商、创建时间、到期时间、域名状态。
重点看两个:
- 到期时间:工具会算出剩余天数。到期不续费,站点、企业邮箱和第三方验证会同时失效
- 域名状态:出现
pendingDelete或redemptionPeriod说明已经进入删除或赎回流程,处理窗口很短
还有一个常被忽略的因素:新域名有信任期,搜索引擎不会立刻大量抓取。这期间能做的是保证站点结构清晰、内链充分、sitemap 正常提交,而不是反复改内容。
#什么时候该用哪个工具
| 你想确认的事 | 用哪个 | 关键点 |
|---|---|---|
| 某个 URL 是否允许被抓 | robots.txt 检测 | 支持通配符与按爬虫身份检测 |
| 页面到底返回什么码 | HTTP 状态码 | 查阅表,实际状态用 curl -I 验证 |
| 来访者是不是真爬虫 | UA 解析 | UA 可伪造,只能当线索 |
| 域名有没有过期或异常 | Whois 查询 | 含剩余天数与状态告警 |
| 标题描述长度是否合适 | Meta 标签生成 | 按像素宽算,不是字符数 |
排查顺序就是本文的顺序:状态码 → robots/noindex → UA → 域名。 前三项能解释绝大多数「收录为零」,域名问题则往往伴随「整站突然消失」。
这套顺序与 网站上线前检查什么 互补:那篇讲上线前该预防什么,这篇讲上线后出了问题怎么定位。
#常见问题
#提交了 sitemap 还是不收录,是什么原因?
sitemap 是「告诉爬虫有哪些 URL」,不是「要求它收录」。提交后长期不收录,通常回到三条线里的一条:页面状态码不对、被 robots 或 noindex 挡住、或者内容与其他页面高度重复。另外 sitemap 本身要能被访问(返回 200 且是合法 XML),并且其中的 URL 与 canonical 一致。
#应该用 404 还是 410?
不确定这个页面将来会不会恢复,就用 404 —— 它是「暂时找不到」,语义上留有余地。确认内容永久删除且不再提供,用 410,它能让搜索引擎更快移除索引。两者都不要用 200 加一句「页面不存在」,那会让爬虫把空页面当成正常内容收进去。
#为什么我的页面被收录了但搜不到排名?
收录和排名是两件事。收录只表示搜索引擎知道这个 URL 存在;能不能排上去取决于关键词竞争、内容与查询的相关性、以及站点整体质量。这时候该改的是标题、正文与内链,而不是继续排查技术问题。
#robots.txt 写错后要多久恢复?
改回来之后,爬虫下次抓取 robots.txt 就会读到新规则,但重新抓取那些已被挡住的页面需要时间,取决于站点被爬的优先级。加速办法是主动在搜索平台后台提交 sitemap,或用「抓取测试」工具请求重新抓取关键页面。
#如何确认来访的真的是 Googlebot?
看服务端访问日志里的来源 IP,与搜索引擎官方公布的网段列表比对,或者做反向 DNS 查询确认域名归属。仅凭 UA 字符串无法判断 —— 任何人都可以发一个写着 Googlebot 的请求,这类伪造流量在恶意采集里非常常见。
本文提到的工具
robots.txt 检测在线工具,解析 robots 协议规则(User-agent/Allow/D…
立即使用 →HTTP 状态码HTTP 状态码查询在线工具,收录 56 个 1xx-5xx 常用状态码的中英文含义与说明,按类别速查…
立即使用 →UA 解析UA 解析在线工具,识别浏览器、版本、操作系统、设备类型与渲染内核,支持 Chrome、Edge、Fi…
立即使用 →Whois 查询Whois 域名查询在线工具,基于标准 RDAP 协议实时查询域名注册商、创建/过期/更新时间、域名服…
立即使用 →Meta 标签生成Meta 标签生成在线工具,填写标题/描述/关键词一键生成完整 SEO 标签,包含 Open Grap…
立即使用 →