上线前核对抓取与索引配置,核心是回答两个问题:搜索引擎能不能抓到页面,抓到后愿不愿意收录。最直接的做法是先用抓取工具模拟访问,再检查 robots 规则、canonical、站点地图和状态码是否互相矛盾。下面从一个假设例子展开,说明具体步骤和常见错误。
假设你刚用常见 CMS 搭好一个企业站,首页、栏目页、文章页都已发布,域名从测试环境切到正式域名。上线前不要先提交站点地图,而应按以下顺序核对。
Disallow: /。这个顺序的意义在于:如果 robots 已屏蔽整站,提交站点地图也不会带来有效抓取;如果 canonical 指向测试域名,即使页面被抓取,索引也可能落到错误地址。
robots.txt 是抓取层面的第一道门。它不控制索引,但会直接影响搜索引擎能否访问页面。核对时重点看三处:
Disallow: /,这会阻止整站抓取。/product/ 或 /news/。检查方法很简单:在浏览器访问正式域名下的 /robots.txt,逐行阅读规则。如果使用了 CMS 插件生成 robots,要确认插件没有覆盖你手写的规则。判断结果是:只要目标页面被任何一条 Disallow 规则匹配,抓取就会被阻止;此时应先修正规则,再谈索引。
canonical 用来告诉搜索引擎哪个地址是页面的首选版本。上线前常见错误是:页面能从正式域名访问,但 canonical 仍写着测试域名或带参数的地址。核对时打开几个代表页面,查看 <link rel="canonical"> 的 href 值。
判断标准是:canonical 应指向该页面自身的正式绝对地址,且与站点地图中列出的地址一致。如果 canonical 指向另一个页面,等于主动放弃当前页面的索引;如果指向测试域名,正式页面可能长期不被收录。站点地图则负责列出希望被抓取的地址,它不能替代 canonical,两者矛盾时优先修正 canonical。
配置检查完后,用搜索引擎提供的抓取模拟或 URL 检查类工具,输入几个代表页面地址,观察返回结果。重点看四项:
noindex 标签。如果抓取成功但提示 noindex,说明页面能被抓取但不会进入索引,需要检查模板或插件是否给整站加了 noindex。如果抓取被阻止,先回到 robots.txt 修正,而不是反复提交站点地图。假设例子中,若文章页 canonical 指向测试域名,工具会显示首选地址异常,此时应批量替换模板中的域名变量后重新验证。
完成上述核对后,先提交站点地图,再观察抓取统计中目标页面的响应情况。若发现大量页面仍未被抓取,优先检查内链是否可达、服务器是否稳定返回 200,而不是急于调整内容。把这次核对的项目整理成一份上线检查清单,下次建站时按同样顺序执行即可。