网站内容写得不差,服务器也没挂,可搜索引擎就是不收录你——
我花了几个月才搞明白:收录不是一个开关,是一条管道。管道上任何一段堵了,你都看不到结果,而且报错不会告诉你堵在哪。
这篇是我把自己网站的整条「收录管道」拆开逐段排查的实录:从防火墙误杀搜索引擎、被挂马给爬虫喂垃圾,到 sitemap 格式百度不认、死链拖累配额——每一段都是真实踩坑,附自查方法。如果你的站也「不知道为什么就是不收录」,照这条管道逐段查,大概率能找到堵点。
一、先建立这个认知:收录是一条五段管道
很多人把「不收录」当成一个问题去搜答案,其实它是五个环节串联的结果,坏一环全白搭:
图1:收录管道五段——症状都叫”不收录”,病根却在不同段
二、第①段:你的防火墙,可能正在拦真爬虫
为了防爬虫洪水(上一篇讲过),我在 nginx 加了「带多个筛选参数的请求直接拒绝」的规则。结果复盘日志时发现:27 小时里,这条规则把真 Bingbot 拦了 7000 多次。Bing 一边在站长后台提示抓取异常,一边是我自己把它挡在门外。
教训两条:
- 上反爬规则后,必须回头查误杀。日志里按状态码筛出被拒的请求,看看里面有没有搜索引擎的 IP 段。
- 辨别真假爬虫,UA 不可信,用「正反向 DNS 双向验证」。先反查 IP 得到主机名(真 Bing 是
*.search.msn.com),再把主机名正向解析回去——必须解析回原 IP 才算真。只看反查会被伪造骗过;正向那一步伪造者做不到,因为域名在微软手里。
三、第②段:爬虫看到的,未必是你的页面
这是我踩过最阴的一个:网站被挂马(nginx 层注入),专挑搜索引擎和手机 UA 下发被注入垃圾脚本的页面,真人访客看到的一切正常——所以我自己怎么看都没问题,搜索引擎却连续几周抓到的是垃圾,收录自然完蛋。完整排查过程在这篇。
自查方法(一分钟):用搜索引擎的「抓取诊断」(百度站长/必应站长都有)真抓一次你的首页,逐字看返回的 HTML 里有没有你不认识的脚本、域名。别用自己浏览器看——挂马就是利用「你看到的和爬虫看到的不一样」。我修复后就是靠百度抓取诊断确认页面干净的:返回 200、内容全对、无注入。
四、第③段:sitemap 交了,但它认吗
两个真实的坑:
- 百度不认嵌套的 sitemap 索引。我原来用的是「sitemap 索引指向多个子 sitemap」的两层结构(Google 没问题),百度那边基本无效。后来专门生成了一份扁平的单文件 sitemap(所有 URL 平铺一层)喂给百度,才通。给百度的 sitemap,能扁平就扁平。
- 「提交了」不等于「格式对了」。去站长后台看 sitemap 的抓取状态和「发现的 URL 数」,数字对不上就是格式或范围出了问题,别默认它工作正常。
五、第④段:死链和重复 URL 在悄悄耗你的配额
爬虫给每个站的抓取量是有限的(俗称配额)。小站配额本来就少,如果大量被浪费在死链和重复 URL 上,新内容就轮不到抓:
- 删掉的页面返回 410,比 404 掉得快。404 = “暂时找不到”,爬虫还会反复回来试;410 = “永久删除,别来了”。我有约 6000 个已删除的标签页,从 404 改成 410 后,爬虫消化它们明显加快,省下的配额去抓真内容。
- 同一内容的两个 URL,用 301 收口成一个。光写 canonical 对国内引擎不保险(百度对 canonical 时灵时不灵),能 301 就 301。
- 无限筛选组合页(?a=&b=&c=)要么拦、要么 noindex,否则配额全被这种垃圾组合吃掉——这也是上一篇爬虫洪水的根源。
图2:死链用 410 而不是 404——给爬虫一个明确的”别再来了”
六、第⑤段:技术全对了,还有一层「信任」
把前四段全修好后,我的百度索引量面板依然是一条死线。爬虫日志明明显示百度每天来抓三四百次、状态码健康——抓取恢复了,索引没跟上。
这就是最后一层:信任。如果你的站有过”前科”(比如被挂马给爬虫喂过垃圾),搜索引擎会进入观察期:继续抓,但少收、缓收。这一层没有技术开关,只能靠持续的干净内容 + 稳定的可抓取性换时间,通常以周到月计。着急没用,但前四段不修好,这一层永远不会开始计时。
七、收录排查清单(照抄)
- 查误杀:日志里筛被拒(403/444/429)的请求,反查 IP 看有没有真搜索引擎;用正反向 DNS 双向验证辨真假。
- 查内容:站长后台「抓取诊断」真抓一次,逐字看 HTML 有无陌生脚本/域名。
- 查 sitemap:给百度的用扁平单文件;后台核对”发现的 URL 数”对不对得上。
- 查死链:已删页面返 410;重复 URL 用 301 收口;无限参数组合页拦掉或 noindex。
- 然后等:信任层按周计,用抓取日志(而不是心情)确认管道是通的。
回头看,「不收录」这个症状骗了我很久——因为它把五种完全不同的病,都显示成同一张脸。把收录当管道逐段查,而不是当开关反复按,是我这几个月学到的最值钱的一课。
如果你的站也长期不被收录、索引量不动、或者怀疑被挂马/误杀了爬虫——可以找我聊。这条管道上的每一段我都亲手排查过,帮你定位堵在哪一段,比盲目”提交链接”有用得多。