改版或迁移时,应核对百度的抓取与索引是否被意外阻断。核心是确认旧链接是否仍可达、新链接是否可被抓取、站点地图与robots.txt是否指向正确版本,以及服务器日志里百度爬虫的访问是否正常。
假设某站点从旧域名迁移到新域名,运维只配置了301跳转,但robots.txt仍保留旧规则,禁止抓取部分目录。百度爬虫访问旧链接时会被跳转到新域名,但到新域名后又被robots.txt拦住,导致新页面长期不被抓取。这个例子的关键不是跳转本身,而是跳转后是否还有第二道拦截。
常见错误是只检查首页跳转,不检查内页;只看浏览器能否打开,不看百度爬虫的访问记录。浏览器能打开不等于爬虫能抓取,因为robots.txt、服务器防火墙、CDN规则都可能只对爬虫生效。
逐项检查旧URL是否返回301或302,并确认最终落地页返回200。不要用JavaScript跳转替代服务器端跳转,因为百度爬虫对JS跳转的识别可能不稳定。可以用命令行工具模拟爬虫请求,观察状态码和重定向链:
curl -A "Baiduspider" -I https://旧域名/路径
判断结果:若返回301且Location指向新域名,继续请求新域名;若新域名返回200,说明跳转链正常。若返回403、404或跳转回旧域名,说明配置有误。注意,302是临时跳转,迁移场景优先用301。
robots.txt的抓取限制不等于索引移除。即使禁止抓取,已索引的旧页面仍可能出现在搜索结果中。迁移时要确认新域名的robots.txt没有误封重要目录,同时旧域名的robots.txt不应阻止百度爬虫访问跳转规则。
站点地图不保证收录,但能帮助发现新链接。核对站点地图中的URL是否全部为新域名,且返回200。若站点地图仍包含旧域名,百度爬虫可能反复抓取旧链接,浪费抓取配额。站点地图应放在新域名根目录,并在百度搜索资源平台提交。
日志是定位问题的直接证据。筛选User-Agent包含Baiduspider的记录,观察三点:
若日志中百度爬虫几乎消失,可能是DNS解析、防火墙或CDN拦截。若大量404,说明旧链接未正确跳转。若只有首页被抓,说明内链或站点地图未暴露新链接。
HTTPS不保证安全无漏洞或排名,但迁移到HTTPS时,证书链不完整可能导致百度爬虫握手失败。检查证书是否由可信CA签发、是否包含中间证书、是否与域名匹配。可用在线SSL检测工具或命令行验证:
openssl s_client -connect 新域名:443 -servername 新域名
若返回验证错误,百度爬虫可能无法建立连接。此时应先修复证书,再观察日志中是否恢复访问。
先导出改版前后一周的服务器日志,筛选Baiduspider记录,对比旧域名与新域名的状态码分布。若发现403或404集中出现,优先修复对应规则,再重新提交站点地图并观察抓取变化。