上线前核对抓取与索引配置,核心是确认三件事:爬虫能抓到页面、页面允许被索引、站点能告诉搜索引擎哪些地址值得抓。时间和人手有限时,优先检查 robots.txt、sitemap、页面级 noindex 和 canonical 这四项,再抽查关键页面的返回状态。下面用一个假设例子说明顺序和常见错误。
假设你为湖南一家本地服务企业做了一个展示站,首页、服务页、案例页、联系页共 20 个 URL,计划上线后让搜索引擎自然发现。上线前你只有半小时,建议按以下顺序执行:
https://你的域名/robots.txt,确认没有整站 Disallow: /。如果开发环境遗留了这条规则,整站都不会被抓取。Sitemap: 行,指向正确的 sitemap 地址。noindex,确认没有误加的 <meta name="robots" content="noindex">。canonical,且指向该页面的正式地址。这个顺序的原因是:robots.txt 和 noindex 属于“直接阻止”类配置,一旦写错,后面做再多内容也进不了索引;sitemap 和 canonical 属于“引导”类配置,写错会降低抓取效率或造成重复页面判断问题。
robots.txt 是给爬虫看的抓取规则文件,放在域名根目录下。核对时重点看三类内容:
User-agent: * 加 Disallow: / 时,所有爬虫都被拒绝抓取。测试站复制到正式站时最容易带出这条。Disallow: /js/ 或 Disallow: /css/ 本身不一定影响索引,但如果把内容页目录也写进去,页面就无法被抓取。Sitemap: https://你的域名/sitemap.xml,方便爬虫直接找到地址列表。需要区分的是:robots.txt 控制的是“能不能抓”,不是“能不能索引”。一个页面被 robots.txt 禁止抓取后,搜索引擎仍可能因为外部链接而把它收录,只是无法读取内容。所以不要让重要页面同时被 robots 禁止抓取。
sitemap 的作用是主动提交可抓取的 URL 列表。核对时注意:
页面级检查则看两个标签。<meta name="robots" content="noindex"> 表示该页面不应出现在搜索结果中,常见于测试页、感谢页、重复内容页。如果首页或服务页出现它,需要删除。另一个是 <link rel="canonical" href="...">,它告诉搜索引擎哪个地址是规范版本。常见错误是 canonical 指向了测试域名,或者多个页面互相指向,导致搜索引擎难以判断。
把上面的检查整理成一份可执行清单,按顺序做:
/robots.txt,确认没有整站禁止抓取,并包含正确的 sitemap 地址。noindex 和 canonical,确认没有误加禁止索引标记,canonical 指向正式地址。判断结果的标准是:robots.txt 不阻止重要页面抓取,sitemap 地址可访问且内容正确,重要页面没有 noindex,canonical 指向自身正式地址。四项都通过,抓取与索引的基础配置就算核对完成。
下一步可以准备一份上线后复查清单:上线后再次访问 robots.txt 和 sitemap,确认线上环境没有被测试配置覆盖,并在搜索平台的站长工具中提交 sitemap 地址,观察抓取状态是否正常。