内容优质但搜索引擎不抓取,通常不是内容本身的问题,而是技术链路上某个环节被阻断。排查应按状态码→robots.txt→canonical→sitemap→内链→渲染→服务器日志的顺序逐层进行,每层都有明确的检查工具和修复动作。以下是一套可直接操作的排查流程。

第一步:检查状态码——服务器是否正常响应

抓取的前提是服务器能正常返回页面内容。如果Googlebot访问你的咖啡产品页或品牌故事页时收到4xx或5xx状态码,爬虫会直接放弃。

检查工具:Google Search Console的“URL检查”工具,或使用curl -I https://你的域名/coffee-beans查看响应头。

关键指标

  • 200:正常,继续下一步
  • 301/302:确认重定向目标是否正确,避免链式重定向(如A→B→C)
  • 404:页面已删除或路径错误,需修复或设置410
  • 500/503:服务器故障或过载,需联系主机商

真实案例:某咖啡品牌的新品页面上线后一直未被收录,排查发现服务器对带?utm_source=google的参数返回404,而sitemap中提交的正是带参数的URL。修复方式:要么让服务器正确处理参数,要么在sitemap中提交无参数的干净URL。

边界情况:不要只看首页状态码。很多网站首页正常,但内容页因伪静态规则配置错误返回404。必须逐页检查。

第二步:检查robots.txt——是否无意中屏蔽了搜索引擎

robots.txt是爬虫访问网站的第一道门。如果这里配置错误,Googlebot根本不会进入内容目录。

检查工具:访问https://你的域名/robots.txt,或在Search Console的“robots.txt测试”工具中验证。

关键规则

  • Disallow: / 会屏蔽整个网站
  • Disallow: /blog/ 会屏蔽博客目录
  • Allow: / 配合 Disallow: /admin/ 是常见正确配置

真实案例:某咖啡茶饮网站在迁移时,开发人员将Disallow: /写入了robots.txt,导致所有页面在两周内从索引中消失。修复后,通过Search Console请求重新抓取,索引恢复需要3-5天。

操作建议:检查robots.txt中是否包含以下危险模式:

  • 禁止了/product//article/等核心目录
  • 使用了Disallow: /? 导致所有带参数的URL被屏蔽
  • 未正确配置sitemap指令(可选,但推荐加上)

第三步:检查canonical标签——是否指向了错误版本

canonical标签告诉搜索引擎哪个URL是主版本。如果配置错误,Google可能将你的优质内容合并到其他页面,导致原创页面不被索引。

检查工具:浏览器查看页面源代码,搜索rel="canonical";或使用Chrome的“查看页面来源”功能。

关键指标

  • 每个页面应有唯一的canonical URL
  • canonical应指向自身,除非是分页或参数版本
  • 避免所有页面指向首页

真实案例:某咖啡知识网站的所有文章页都指向了首页,原因是CMS模板中误用了全局变量。结果Google只索引了首页,数百篇优质文章全部消失。修复后,需逐个页面重新提交索引。

操作建议:使用Screaming Frog或Sitebulb爬取全站,导出所有页面的canonical标签,检查是否有重复或指向错误的情况。

第四步:检查sitemap——是否提交了正确的URL并覆盖所有重要页面

sitemap是向搜索引擎提交页面清单的官方渠道。如果sitemap缺失、包含错误URL或未提交,重要页面可能长期不被发现。

检查工具:Search Console的“Sitemaps”报告,或直接访问https://你的域名/sitemap.xml

关键指标

  • sitemap中所有URL返回200
  • 覆盖所有需索引的页面(产品页、文章页、品牌页)
  • 不包含noindex页面、分页页面、标签页等低价值URL
  • 已通过Search Console提交,且状态为“成功”

真实案例:某咖啡器具电商的sitemap中包含了3000个产品筛选页(如/products?color=red),但实际产品页只有200个。Googlebot大量抓取筛选页,浪费抓取预算,核心产品页反而被忽略。修复方式:sitemap只提交产品详情页,筛选页通过内链自然发现。

操作建议:sitemap中的URL数量应等于你希望被索引的核心页面数量,而不是全站URL总数。定期检查sitemap中是否有404或301的URL。

第五步:检查内链结构——爬虫能否通过链接到达内容页

即使sitemap提交了,如果页面没有内链入口,爬虫可能仍然无法发现它。内链是爬虫发现页面的主要路径。

检查工具:使用Screaming Frog爬取网站,查看“Inlinks”列;或手动检查重要页面是否在导航、面包屑、相关文章中有链接。

关键指标

  • 每个重要页面至少有1个来自其他页面的可点击链接
  • 链接使用<a href="...">格式,而非JavaScript事件或图片映射
  • 避免使用nofollow阻止爬虫跟踪

真实案例:某咖啡品牌的“咖啡豆产地故事”系列文章,只在首页的“最新文章”模块中出现,但该模块只显示5篇,且不翻页。结果早期文章成为孤岛页面,从未被爬虫发现。修复方式:在文章页底部添加“相关文章”模块,确保每篇文章至少有3-5个内链入口。

边界情况:不要依赖“网站地图”或“归档页”作为唯一内链入口。这些页面通常层级深、权重低,爬虫可能不会频繁访问。

第六步:检查渲染——JavaScript内容是否被正确抓取

如果你的咖啡茶饮网站大量使用JavaScript渲染内容(如菜单、价格、评价、产品描述),Googlebot可能无法提取文本内容。

检查工具:Search Console的“URL检查”工具,点击“查看已抓取页面”,对比“HTML”和“渲染的HTML”差异。

关键指标

  • 渲染后的HTML中是否包含核心文本内容
  • 是否依赖JavaScript加载关键数据(如价格、库存)
  • 是否使用客户端渲染框架(如React、Vue)且未做SSR

真实案例:某咖啡订阅网站的“本月咖啡豆”页面,产品名称和价格通过JavaScript异步加载,Googlebot抓取时只看到空白容器。修复方式:使用服务器端渲染(SSR)或预渲染,确保核心内容在初始HTML中可见。

操作建议:如果网站依赖JavaScript渲染,至少确保以下内容在初始HTML中可用:标题、描述、价格、链接。Google的JavaScript SEO基础文档明确指出,Googlebot会二次渲染,但渲染结果可能不完整,且延迟较高。

第七步:检查服务器日志——爬虫实际访问了哪些URL

前六步都是基于假设,服务器日志是唯一能确认爬虫行为的证据。通过日志,你可以看到Googlebot是否真的来过、访问了哪些URL、遇到了什么错误。

检查工具:如果使用Apache或Nginx,日志文件通常在/var/log/apache2/access.log/var/log/nginx/access.log。使用grep googlebot access.log过滤爬虫请求。

关键指标

  • Googlebot访问的URL列表,是否覆盖了所有重要页面
  • 访问频率:是否过于频繁(可能触发限流)或过于稀疏(抓取预算不足)
  • 错误码分布:是否有大量404或500

真实案例:某咖啡茶饮网站发现产品页未被索引,日志显示Googlebot只访问了首页和分类页,从未访问过产品详情页。原因是产品页的链接使用了onclick事件而非<a>标签,爬虫无法发现。修复后,日志中开始出现产品页的访问记录。

操作建议:如果日志显示Googlebot访问频率很低,可能是网站权重不足或抓取预算有限。此时应优先优化sitemap和内链,确保爬虫每次访问都能发现新页面。

Q&A

问:咖啡茶饮网站常见的抓取问题有哪些? 答:常见问题包括:服务器返回500错误、robots.txt误屏蔽、canonical指向首页、sitemap未提交或包含错误URL、内链不足导致页面成为孤岛、JS内容未正确渲染。

问:排查完所有步骤后仍无法解决怎么办? 答:如果按照上述流程排查后问题依旧,可能是更深层的技术问题,如服务器IP被Google列入黑名单、CDN配置错误、或网站存在软404。此时建议进行全面的技术审计,可参考天行GEO的技术审计服务或查阅常见问题解答中的相关案例。

问:排查顺序可以调整吗? 答:建议按本文顺序进行,因为每一步的结果会影响下一步的判断。例如,如果状态码返回404,检查robots.txt就没有意义;如果canonical指向错误,sitemap提交的URL可能被忽略。逐层排查能避免重复劳动。