把测试环境和线上环境做360收录对照,核心不是比较两边“谁能被收录”,而是先确认测试环境有没有被360搜索蜘蛛抓到、有没有产生可被收录的URL,再判断这些URL是否与线上页面构成重复或冲突。时间和人手有限时,最先做的应该是隔离测试环境,而不是逐条提交或删改。
测试环境通常带有独立域名或子域名,例如 test.example.com 或 dev.example.com。如果它没有登录保护,又允许外部访问,360蜘蛛就可能顺着外链、历史记录或页面里的链接爬进去。此时要观察的是:
200,而不是 401、403 或跳转到登录页;robots.txt 是否对360蜘蛛放行;这里要区分“可能原因”和“已经定位的原因”。测试页被访问过,不等于一定被360收录;页面返回 200,也不等于蜘蛛已经抓取。判断依据应以服务器访问日志中360蜘蛛的抓取记录、以及360搜索结果中是否出现测试域名URL为准。
如果测试环境不需要被任何搜索引擎访问,可以在测试域名的 robots.txt 中限制抓取,例如:
User-agent: *<br>Disallow: /
但必须明确:robots.txt 的抓取限制不等于可靠的索引移除。它只能阻止后续抓取,已经进入360索引的测试URL不会因为加了 Disallow 就自动消失。对于已经收录的测试页面,更直接的处理方式是让测试环境返回 404 或 410,或者加登录验证,使蜘蛛无法继续获取内容。
如果测试环境必须保留可访问性,至少应做到:测试域名不与线上域名互相链接;测试页面的 canonical 指向线上对应URL;测试环境不生成站点地图,也不把测试URL写进线上站点地图。
站点地图不保证收录,它只是给搜索引擎提供可抓取URL的线索。对照测试环境与线上时,要检查线上站点地图里是否混入了测试域名。如果混入,蜘蛛可能顺着站点地图去抓测试页,增加重复内容风险。
同时检查测试页面的 canonical 标签。假设测试页 test.example.com/page-a 与线上页 www.example.com/page-a 内容相同,测试页的 canonical 应指向线上URL。如果测试页的 canonical 指向自己,或者两边都指向自己,360就可能把它们当成两个独立页面处理。这个判断的适用条件是:两边内容确实相同,且线上页面是希望被收录的版本。
robots.txt。404;需要保留的测试页加 canonical 指向线上;清理线上页面和站点地图中指向测试域名的链接。时间和人手有限时,处理顺序建议是:先封住测试环境的公开访问,再清理线上到测试域的链接,最后才考虑对已收录测试URL做失效处理。HTTPS 不保证安全无漏洞或排名,测试环境即使启用了HTTPS,也不代表它不会被蜘蛛抓取。
下一步可以直接做一件事:打开服务器访问日志,筛选360蜘蛛对测试域名的请求记录,按URL出现次数排序,先处理被请求最多的那批测试页。