上线前核对抓取与索引配置,核心不是让页面“立刻被收录”,而是确认搜索引擎能正常抓取、能正确理解页面、愿意把有效页面放进索引,同时把不该出现的页面挡在外面。很多项目上线后流量起不来,问题并不在内容质量,而在于测试站、重复页、参数页被放开,或者关键页面被 robots、meta 或服务器状态码误挡。下面按可执行的检查顺序说明。
不少开发者认为 robots.txt 允许抓取、页面返回 200,收录就是必然结果。实际上抓取和索引是两件事:robots 只控制“能不能来抓”,能否进入索引还取决于页面质量、重复程度、内链、服务器稳定性和搜索引擎自身的判断。因此核对的目标应设为“不人为制造障碍”,而不是“保证收录”。
判断方法很直接:先看抓取是否被允许,再看页面是否可索引,最后看内容是否值得被索引。三者缺一,前面的配置再正确也没有意义。
robots.txt 是上线前最容易出事故的一项。常见错误是开发阶段写了 Disallow: /,上线时忘记删除,结果整站无法被抓取。
你的域名/robots.txt,确认没有针对整站的禁止规则。/css/、/js/、/images/。这些资源被挡可能影响搜索引擎对页面移动端和渲染效果的判断。Sitemap 地址指向正式域名,而不是测试域名或本地地址。适用条件:robots.txt 放在域名根目录,且对全站生效。判断结果:如果关键目录被 Disallow,应在上线前修正并重新提交,而不是等收录异常后再排查。
从测试环境复制过来的模板,常带着 <meta name="robots" content="noindex"> 或响应头里的 X-Robots-Tag: noindex。这类配置会让页面即使被抓取也不进索引。
检查时不要只看首页,要覆盖模板类型:首页、栏目页、详情页、搜索结果页、分页。可以用浏览器查看源代码搜索 noindex,也可以用抓取工具批量检查响应头。若页面确实需要排除,保留 noindex 是合理的;若这是正式内容页,必须移除。
判断结果:页面返回 200 但长期不收录,且源码或响应头含 noindex,就是明确障碍。若两者都没有,问题更可能在内容质量或内链,而不是索引指令。
上线前应确认正式页面返回 200,已删除页面返回 404 或 410,永久跳转使用 301,而不是 302 或 JS 跳转。JS 跳转对抓取不友好,容易让搜索引擎停留在旧地址。
canonical 用于告诉搜索引擎哪个地址是主版本。常见错误是每个分页、每个筛选参数都指向首页,或测试域名和正式域名互相指向。正确处理是:内容相同的页面指向同一个规范地址;内容不同的页面各自保留自己的 canonical。
适用条件:站点存在多域名、多协议或多个参数入口时,这项检查尤其必要。判断结果:如果同一内容有多个可访问地址且没有统一信号,索引可能分散,排名表现也会被稀释。
以下步骤可以在上线当天按顺序执行,每项都有明确判断结果:
域名/robots.txt,确认没有 Disallow: /,Sitemap 指向正式域名。curl -I 页面地址 或浏览器网络面板查看状态码,确认正式页为 200,跳转为 301。这些检查不能保证收录时间,但能排除绝大多数人为障碍。若某页面返回 200、无 noindex、canonical 正确、robots 允许,仍长期不收录,应转向内容独特性、内链深度和站点整体质量排查,而不是继续改索引指令。
下一步建议:选三个最重要的页面类型各取一个 URL,按上述清单逐项记录结果,形成一份上线检查表,后续每次发版都复用同一套核对流程。