测试环境与线上对照的核心,是确认两边返回给百度的内容、状态码和抓取规则是否一致。做法是分别用相同URL路径、相同User-Agent请求两边,逐项比对HTTP状态、HTML正文、robots响应头和canonical标签,任何一项不一致都可能让线上页面无法被正常收录。
测试环境通常指开发或预发布站点,线上是可被百度访问的正式站点。对照不是比页面好不好看,而是比“百度抓取时看到的东西”是否相同。重点看四类:
curl -I https://线上域名/路径和测试域名同样命令。若线上返回200、测试返回403,说明测试环境的访问控制不该带到线上;若线上本身是302,则百度可能只收录跳转目标。X-Robots-Tag: noindex。测试环境常加此头防止收录,如果它被错误同步到线上,页面会从索引中移除。注意robots.txt的抓取限制不等于可靠的索引移除,移除索引仍需noindex或删除操作。/robots.txt,比对Disallow规则和Sitemap地址。若测试环境的Disallow规则被复制到线上,百度会停止抓取对应目录。站点地图不保证收录,它只是发现URL的线索。<title>和<h1>,确认线上没有测试文案。若线上标题带“测试环境”,百度可能判定为低质页面而降低收录意愿。上面的命令只能证明“服务器返回了什么”,还要确认“百度实际抓到了什么”。在百度搜索资源平台对线上URL发起抓取测试,查看返回的HTML和状态码。如果平台抓取结果与curl结果不同,可能是CDN、WAF或地域节点返回了不同内容,需要继续对比节点。HTTPS不保证安全无漏洞或排名,它只是对照时的一项基础检查,不能替代内容与状态码比对。
这些现象可能由多个原因造成,不要只凭一项就下结论。先固定一个URL,把状态码、响应头、正文、canonical四项记录下来,再逐项排除。
把测试环境与线上不一致的项列成表,优先修复会影响百度抓取和索引的项:noindex头、robots规则、canonical指向、状态码。修复后在百度搜索资源平台重新提交线上URL抓取,观察返回内容是否与线上一致。下一步是选一个之前不收录的线上页面,按上面的清单跑一遍,确认问题出在抓取、索引还是内容质量环节。