前言
我以前的一个博客曾经搬了三次家,两次还都栽在同一个地方😅。不是备份没做,也不是数据库没导,而是hosts验证这一步被我忽略了 (。•́︿•̀。), 每次回想起来都觉得挺蠢的,明明之前被坑过一次,却还是搞忘了。 今天我来分享一下搬家的经历和踩过的坑,给正在准备迁移的大家做个参考。
为什么hosts验证这么重要
第一次迁移的时候,我特别自信。快照做了,数据库导了,wp-content打包了,Cloudflare缓存也清了。切完DNS解析,打开网站,首页正常。我当时还发了条动态说迁移顺利 ( ̄▽ ̄) 结果第二天有读者跟我说,他那边打开还是旧文章。我以为是CDN缓存,又清了一遍,还是不对 🤔 后来才发现,是我自己电脑的DNS缓存没刷新,我看到的一直是旧服务器。而真实用户那边,新服务器上其实SSL还没配好,一堆人访问报错 😭
迁移里最不该省的一步,是先在本地把域名指到新服务器,把该测的都测完,再动DNS。
WordPress博客迁移和搬一个静态站不一样。静态站文件传过去,基本就完事了,而WordPress背后有数据库、有插件、有固定链接、有SSL、有缓存。你切解析的那一刻,所有这些东西必须同时是好的,否则用户看到的就是502、样式错乱、后台进不去等等问题。
hosts验证的作用,就是让你在不动全局DNS的情况下,只让自己这台电脑访问新服务器。你可以在正式切换前,把首页、文章页、后台、图片、评论、固定链接、SSL全部走一遍。有问题就修,修好了再切。用户全程访问的还是旧站,体验不受影响。
希望大家都能多检查一下,这一步花不了多少时间,但是能挡掉大部分翻车。
我现在的迁移顺序
经过三次搬家,我现在固定按这个顺序来。
先在新服务器装好同版本的1Panel,把环境对齐。这一步别偷懒,PHP版本、MySQL版本、Nginx配置,差一点都可能出问题。
然后在旧服务器做双备份。1Panel的快照功能很好用,一键把系统环境、网站文件、数据库、配置全打包。但快照之外,我还是会手动再备一次数据库和wp-content。快照恢复偶尔会出幺蛾子,手动备份是兜底 (•̀ᴗ•́)و
接着处理Cloudflare。清掉全部缓存,暂时关掉Always Online,把DNS记录截图存好。这几步看着琐碎,但迁移后出问题,很多时候就是缓存和Always Online在捣乱。
新服务器恢复快照,确认站点和数据库都完整。如果快照恢复失败,就手动上传网站压缩包,创建同名数据库,导入sql,再核对wp-config.php里的数据库账号密码。
hosts验证具体怎么做
打开自己电脑的hosts文件。Windows在C:\Windows\System32\drivers\etc\hosts,Mac和Linux在/etc/hosts。用管理员权限打开,加一行新服务器IP加空格加你的域名,保存。
然后刷新本地DNS缓存。Windows执行ipconfig /flushdns,再重启一下dnscache服务。Mac执行sudo killall -HUP mDNSResponder,然后重连Wi-Fi。
这时候打开浏览器访问你的域名,如果看到的是新服务器上的站点,说明hosts生效了。接下来逐项检查:首页能不能开,文章页固定链接对不对,wp-admin能不能登录,图片显示是否正常,发一篇测试文章,传一张图,提交一条评论。全部走一遍,不要嫌麻烦。
我第一次迁移就是没有做hosts验证,导致没有及时发现新服务器的SSL证书没配好😅,结果当时直接切DNS,全站都会报证书错误 (╥﹏╥),之后才补完证书,把网站搞好。
验证完记得把hosts里那行删掉或者注释掉,不然你自己会一直访问新服务器,旧站那边的情况就看不到了。
切解析和收尾
hosts验证通过之后,再去Cloudflare改A记录,指向新服务器IP。TTL设短一点,5分钟,方便全球解析快速同步。等一会儿,用nslookup或者ping.pe确认各地节点都解析到新IP了。
SSL模式按新服务器的证书情况选。新服务器已经申请了Let's Encrypt证书,就选完全Strict。还没配证书,先选灵活,补完证书再改回来。
重新打开Always Online,再清一次Cloudflare缓存,让CDN抓新服务器的内容。
SEO这块也要收尾。新服务器的robots.txt如果有临时屏蔽爬虫的规则,删掉。用插件生成新的Sitemap,去站长工具重新提交。首页和热门文章用URL检查请求索引。接下来一到两周盯一下抓取趋势和索引量,有404就提交死链。
旧服务器别急着销毁,放几天,确认新站稳定了再关。
一点个人感受
迁移这件事,技术步骤网上到处都是,但真正让人翻车的,往往是那些“我以为没问题”的地方。备份大家都记得做,DNS大家都会改,偏偏hosts验证这种中间步骤,最容易被忽略 🤦
我现在每次迁移,都会在hosts验证这一步多花二十分钟。二十分钟换网站迁移不出问题,这笔账很划算 (๑•̀ㅂ•́)و✧
如果你也在准备迁移,建议别省这一步。备份是底线,hosts验证才是平稳过渡的关键。
非常感谢你耐心阅读到结尾!
