改动前保存原始状态,核心是先把“当前线上可被搜索引擎抓取和索引的版本”完整留档,再动任何配置或模板。最容易被忽略的一步是:把线上正在生效的 robots.txt、页面 HTML 头部、可访问 URL 列表和站点地图分别存成带日期的文件,而不是只备份数据库。数据库备份恢复的是内容,恢复不了搜索引擎当时看到的响应状态。
不要假设“后台内容等于线上索引内容”。用浏览器无痕窗口或命令行抓取工具,对关键页面发起一次真实请求,保存完整响应。重点记录:
X-Robots-Tag,它可能比页面里的 meta 标签优先级更高。<head> 中的 <meta name="robots"> 与 <link rel="canonical">。把每个文件按“日期-页面路径-类型”命名保存,例如 20250115-about-html.txt。这一步的价值在于:改动后如果收录下降,你能判断是内容变了、状态码变了,还是抓取规则变了,而不是靠回忆猜测。
第一类是抓取规则文件,即 robots.txt 原文。第二类是索引入口文件,即当前提交给搜索引擎的 sitemap,注意保存的是线上可访问的那一份,不是后台生成的草稿。第三类是页面级信号,至少覆盖首页、栏目页和主要详情页的模板输出结果。第四类是 URL 清单,记录当前返回 200 且允许抓取的地址。
如果站点使用动态渲染或前端路由,还要额外保存一份渲染后的 HTML,因为搜索引擎抓取到的可能是渲染结果,而源代码里看不到最终 meta 标签。保存方式可以是命令行输出重定向到文件,也可以用浏览器“网页另存为”,但要确认保存的是服务器返回版本而非本地修改后的版本。
保存完成后,做三项交叉检查。第一,用无痕窗口直接访问 /robots.txt,确认文件内容与保存版本逐字一致。第二,随机抽取两个保存的页面文件,重新请求一次线上地址,对比状态码和 canonical 是否相同。第三,确认 sitemap 中列出的 URL 在保存的 URL 清单里都能找到。
这里有一个常见误区:robots.txt 的抓取限制不等于可靠的索引移除。如果你保存的原始状态里包含 Disallow,它只阻止抓取,不保证已收录页面从结果中消失。同样,站点地图不保证收录,它只是提交入口。保存这些文件是为了对比“改动前后搜索引擎能看到什么”,而不是把它们当成收录保证。
改动上线后,按相同路径重新抓取一份,与原始文件逐项对比。判断顺序建议是:先看状态码是否仍为 200,再看 robots.txt 是否意外收紧了抓取,再看 canonical 是否指向了错误地址,最后看 sitemap 是否仍能正常访问。任何一项与原始状态不一致,都先回退该项,而不是同时调整多个变量。
如果站点启用了 HTTPS,注意 HTTPS 本身不保证安全无漏洞,也不直接等于排名提升,它只是传输层协议。保存原始状态时,把协议和主机名一并记录,避免改动后出现 http 与 https 混用导致 canonical 指向不一致。
下一步:打开你当前线上的 robots.txt 和首页源代码,各保存一份带日期的副本,然后列出你计划改动的具体文件。只有原始状态留档完成,后续的索引对比才有意义。