这个坑值得记一笔。迁移当天把 DNS 指向新服务器,同时上线 301 规则,结果蜘蛛连续几天抓到连接超时和 502。
真正麻烦的地方在于,几个原因的现象几乎一样。DNS 生效期间新旧服务器同时存在,配置不一致;301 规则在新服务器上还没生效就开始解析;TTL 设得太长,部分节点长时间指向旧 IP。
上来先把 TTL 调低再迁移
dig +short old.com | head -1
新服务器先配好 301 并本地验证
curl -sI -H 'Host: old.com' http://新IP/a/ | head -3
剩下的就是确认稳定后再切换 DNS 解析
nslookup old.com 8.8.8.8
排查用的命令都是临时敲的,没有写成脚本,事后才整理。
手上没有现成的复现脚本,就照着线上请求手工拼了一个。
报错是间歇性的,我蹲守了半小时才抓到一次完整现场。
别只看报错消失,验证要多做一步。切换期间没有出现超时,蜘蛛抓取连续,收录没有明显波动。
迁移要分步走,DNS 和跳转不要同一分钟上线,中间留出验证窗口,出问题还能退回去,最忌讳一次性全切。监控比日志更早给出信号,事后回看经常能提前半小时发现异常。