本站刚把一台跑了 266 天的宝塔老服务器整体迁到新机器上:8 个站点,其中 3 个是 WHMCS,外加 8 个数据库和一批 SSL 证书,一天搞定,访客几乎无感知。这篇把流程和踩过的坑整理出来,你换服务器时可以直接照着做。
【站长自营】JUSTG、IMIDC 均为本站站长运营的品牌,以下价格与配置整理自两家官网商店页(2026-10-09),以下单页为准。
第 0 步:先盘点,别急着搬
登录旧服务器,把这些信息列成清单:
# 网站目录和大小
du -sh /www/wwwroot/*
# 每个站的 nginx 配置:域名、PHP 版本、反向代理
grep -E "server_name|root|enable-php|proxy_pass" /www/server/panel/vhost/nginx/*.conf
# 证书到期时间
for c in /www/server/panel/vhost/cert/*/fullchain.pem; do echo "$c $(openssl x509 -enddate -noout -in $c)"; done
# 计划任务
crontab -l
重点:再用 dig 查一下每个域名现在解析到哪里。我们就发现有两个域名的线上站点其实不在这台服务器上,如果照着目录直接搬并切换解析,会把线上站覆盖掉。
第 1 步:新服务器装好同版本环境
PHP 版本要和旧站一致。WHMCS 这类加密程序还需要 ionCube,以及 imap 等扩展。对比一下两边的扩展列表:
/www/server/php/74/bin/php -m
少什么就在面板里装什么。ionCube loader 可以直接从旧服务器复制同版本的 .so 文件,再在 php.ini 里加上 zend_extension。
第 2 步:导出数据库(保证一致性)
mysqldump -uroot -p --single-transaction --routines --triggers --events \
--default-character-set=utf8mb4 数据库名 | gzip > 数据库名.sql.gz
--single-transaction 可以在不锁表的情况下导出一致的 InnoDB 快照,网站不用停。导出后用 zcat 文件 | tail -1 看最后一行是不是 “Dump completed”。
第 3 步:服务器之间直接传文件
不要先下载到自己电脑再上传,直接让两台服务器对传,速度快得多:
cd / && tar czf - www/wwwroot/站点目录 | ssh -p 端口 root@新服务器IP "mkdir -p /root/migrate && tar xzf - -C /root/migrate"
第 4 步:在新面板里建站、建库、导入
- 用面板建站:不要手写 nginx 配置,否则站点不会出现在面板里,以后不好管理。
- 把文件复制进网站目录。注意宝塔的
.user.ini带了不可修改属性,要先chattr -i,复制完再加回去,最后chown -R www:www。 - 建数据库时,用户名和密码要和程序配置文件里的一致,然后导入备份。
- 伪静态:旧站如果是 Apache 跑的
.htaccess,新站用 nginx 就要改写成 nginx 规则,vendor、attachments这类敏感目录记得禁止访问。 - SSL 证书可以先沿用旧证书,切换后再续期。
第 5 步:切换前先验证
不改解析,也能直接访问新服务器上的站点:
curl -I --resolve www.你的域名.com:443:新服务器IP https://www.你的域名.com/
我们把同一批 URL 分别请求新旧服务器,对比状态码和内容大小,静态站完全一致后才切换。也可以改本机的 hosts 文件,用浏览器检查。
第 6 步:切换解析
站点如果接入了 Cloudflare 代理,只要把 A 记录改成新 IP,几乎实时生效,旧服务器全程在线,访客无感知。没用 Cloudflare 的,提前一天把 TTL 调到 300 秒。
如果是改 NS(例如把域名转到 Cloudflare),各地 DNS 缓存最长可能要 48 小时才完全生效,期间新旧服务器都要保持在线。
WHMCS 迁移的特别注意
- 授权:WHMCS 授权绑定 IP,换服务器后要到授权后台 Reissue。
- configuration.php 里的
cc_encryption_hash必须原样保留,否则已保存的加密数据无法解密。 - cron:确认新服务器上配好了 WHMCS 的定时任务(crons/cron.php),但不要在旧服务器还在跑的时候两边同时运行,否则可能重复出账单。
不想自己搬?
迁到 IMIDC 的新客户,符合条件可以享受免费迁移,网站、数据库、邮件都由技术团队完成。新服务器可以看 IMIDC 香港(免备案,$18/月起),或者 JUSTG 东京($9.99/月起)。
价格整理自 JUSTG、IMIDC 官网商店页,整理日期 2026-10-09,以下单页为准。
【站长自营】本文介绍的品牌由本站站长运营,属于自家产品推荐。价格、配置以官网下单页为准,购买前可先申请测试机。