网站搬家/迁移全攻略——换了3次服务器后总结的22步检查清单

王尘宇 问题解答 12

网站搬家/迁移全攻略——换了3次服务器后总结的22步检查清单-第1张图片-王尘宇

从2023年到2026年,我经手的站点迁移大概有20多次——自己的站、客户的站、朋友的站。迁移这件事,做对了用户完全无感,做错了流量能砍半。下面是踩了无数坑后总结的标准流程。

迁移前:准备工作(8步)

1. 降低DNS TTL:迁移前24小时把域名TTL从默认的3600秒改成300秒(5分钟)。这样切换时DNS生效快。

2. 全量备份:文件+数据库+配置文件。别只备份WordPress的uploads目录——也备份nginx/vhost配置、SSL证书、crontab。命令:`crontab -l > crontab_backup.txt`。

3. 记录当前PHP版本和扩展:`php -m` 列出所有扩展模块。新服务器装一模一样的,不然程序可能报错。

4. 记录MySQL版本:`mysql --version`。MySQL 5.7的数据库导入到8.0可能有字符集兼容问题。

5. 检查磁盘用量:`du -sh /wwwroot/*`。确保新服务器磁盘够用,留30%余量。

6. 准备hosts测试:迁移后、改DNS前,先在本地改hosts文件指向新服务器IP,验证一切正常。

7. 通知搜索引擎:Google Search Console → 设置 → 地址更改。告诉Google你在迁移。

8. 选好迁移窗口:凌晨2-5点是流量最低的时段。选周二到周四,别选周末。

迁移中:技术操作(7步)

9. 新服务器装环境:LNMP/LAMP、同版本PHP、同版本MySQL。别趁机升级版本——开发环境可以,生产环境迁移和升级别同时做。

10. 传文件:大文件(>1GB)用rsync不用scp。scp断线重传很痛苦。命令:`rsync -avzP /wwwroot/ root@新IP:/wwwroot/`。

11. 导入数据库:源服务器`mysqldump`,新服务器`mysql < dump.sql`。注意指定字符集:`--default-character-set=utf8mb4`。

12. 改数据库连接配置:wp-config.php或config文件里的数据库密码可能不同。

13. 配置SSL证书:别手抄证书文件。在新服务器上用acme.sh或certbot重新签发,比迁移证书文件更可靠。

14. 检查文件权限:uploads目录要可写(755),wp-config.php要只读(440)。

15. 本地hosts测试:改`/etc/hosts`添加`新IP yourdomain.com`,浏览器访问检查所有页面。

迁移后:验证和监控(7步)

16. 切换DNS:把A记录指向新IP。之前改的TTL=300秒会在5分钟内生效。

17. 监控404错误:Google Search Console里看爬虫错误,前48小时重点监控。

18. 检查HTTPS:https://yourdomain.com 正常访问,没有证书警告。

19. 测试表单和支付:留言、注册、下单——所有POST操作都走一遍。

20. 检查定时任务:crontab有没有在新服务器上重新设置。常被遗忘。

21. 旧服务器不要立即删:至少保留72小时。万一新服务器出问题,把DNS改回去只要5分钟。

22. 提交地址更改:Google Search Console确认地址更改完成。百度搜索资源平台也一样。

Z-BlogPHP迁移特殊注意

如果你用的是Z-BlogPHP而不是WordPress:

  • zb_users/c_option.php里有数据库配置,改这里。
  • zb_users/cache/目录清空,ZB会重新编译模板缓存。
  • 如果用了伪静态,把原服务器nginx规则复制过来。ZB的路由规则和WP不同。
  • 中文tag/slug在新环境可能出现乱码——检查MySQL字符集是否一致。

血泪教训

我最大的一次翻车:迁移完发现流量暴跌70%,排查了两天才发现——旧服务器上禁止了Googlebot以外的爬虫(robots.txt写Disallow: /),新服务器robots.txt忘了传。所有搜索引擎爬虫被挡了一周。这个教训值很多钱。

标签: 网站迁移 网站搬家 服务器迁移 WordPress迁移 DNS切换 SSL证书

发布评论 0条评论)

  • Refresh code

还木有评论哦,快来抢沙发吧~