小皮面板怎么迁移站点到另一台服务器

liulian
liulian 初级会员超兽战士
发布于 2026-10-08 16:24 ·2 浏览 ·0 回复

学完这篇,你能把小皮面板里的一整个站点——网站文件加数据库——完整搬到另一台服务器上并正常访问,包括域名切换前的验证方法。

迁移的本质只有三件事:把文件搬过去、把数据库搬过去、把配置文件里的连接信息对上。下面按步骤走。

第一步:在新服务器装好同版本环境

这一步要做什么:在新服务器上装好小皮面板,并保证 PHP、MySQL 版本和老服务器一致,装完你能登录新面板。

登录新服务器 SSH,执行小皮面板官方安装命令(官网 xp.cn 的「立即安装」页面会给出当前最新命令,复制执行即可)。装完后终端会打印面板地址、账号、密码,形如 http://你的IP:9999/随机串。

然后在面板「软件商店」里,按老服务器的版本安装:

  • PHP:老站是 7.4 就装 7.4,别直接上 8.2
  • MySQL:老站是 5.7 就装 5.7,8.0 的 sql_mode 严格模式经常让老程序报错
  • Nginx 或 Apache:和老服务器保持一致,否则伪静态规则不能通用

注意:面板端口、登录路径以安装完成时终端输出的为准,不要照抄别人教程里的端口。云服务器安全组要放行该端口,否则浏览器打不开。

第二步:在老服务器打包网站文件

这一步要做什么:把站点根目录打成压缩包,得到一个可以下载的 zip。

在小皮面板左侧点「文件」,进入 /www/wwwroot/,找到你要迁移的域名目录(比如 /www/wwwroot/www.example.com),右键该目录 → 「压缩」,格式选 zip,压缩包会生成在同级目录。

注意:如果站点有多个域名目录(比如主站 + 子站),逐个压缩,或者直接压缩整个 /www/wwwroot。

第三步:导出数据库

这一步要做什么:把老服务器上的数据库导出成一个 .sql 文件。

方式一(推荐):面板左侧「数据库」,在对应数据库那一行点「备份」,备份文件默认落在 /www/server/panel/backup/database/ 之类的备份目录,具体路径备份完成后列表里会显示,再去「文件」里找到它。

方式二:SSH 执行

mysqldump -u root -p 数据库名 > /tmp/dbname.sql

回车后输入 root 密码(小皮面板的 MySQL root 密码在「数据库」页面能看到)。

注意:如果提示 mysqldump: command not found,用方式一,别折腾环境变量。数据库大(超过 500MB)的话,第 4 步别用浏览器下载,直接用 scp 在两台服务器之间传输。

第四步:把备份下载/传输到新服务器

这一步要做什么:让两份备份出现在新服务器上。

小文件:在老面板「文件」里找到压缩包和 sql 文件,点「下载」存到本地,再到新面板「文件」中点「上传」,传上去。

大文件:SSH 里执行

scp /www/wwwroot/www.example.com.zip root@新服务器IP:/tmp/
scp /tmp/dbname.sql root@新服务器IP:/tmp/

第五步:在新服务器解压文件

这一步要做什么:把网站文件放到新服务器的站点根目录。

新面板「文件」→ 进入 /www/wwwroot/ → 点「上传」,把 zip 传进来 → 右键压缩包 → 「解压」到 /www/wwwroot/www.example.com/。

第六步:新建站点

这一步要做什么:在新面板里创建一个和你老站同名的站点,得到新的站点根目录和配置文件。

「网站」→「添加站点」,填写:

  • 域名:老站的域名(迁移完成前可以先随便填个测试域名,比如 test.example.com)
  • 根目录:/www/wwwroot/www.example.com
  • PHP 版本:选第一步装的那个
  • 数据库:如需一并创建就勾选,没这个选项就下一步单独建

创建后,确认第 5 步解压出来的文件确实在这个根目录下(不是多套了一层文件夹)。

第七步:新建数据库并导入

这一步要做什么:在新服务器上重建同名数据库,把数据导进去。

「数据库」→「添加数据库」,数据库名、用户名、密码建议和老服务器完全一致(这样第 8 步就不用改配置了),字符集选 utf8mb4。

然后在数据库列表点「导入」→ 选择上传的 .sql 文件 → 执行。

注意:导入报 Unknown collation: utf8mb4_0900_ai_ci 之类的错误,说明老库是 MySQL 8.0、新库是 5.7。要么新服务器换成 8.0,要么用文本编辑器把 sql 文件里的 utf8mb4_0900_ai_ci 全局替换成 utf8mb4_general_ci 再导入。

第八步:改程序里的数据库连接信息

这一步要做什么:让网站程序连上新库。

用「文件」编辑器打开配置文件:

  • WordPress:wp-config.php
  • 帝国 CMS/织梦:config.php 或 data/config.php
  • ThinkPHP:.env 或 config/database.php
  • 其他程序:一般在站点根目录,文件名带 config

如果第七步的新库账号密码和老库一致,这一步通常不用改。不一致就改这里的 DB_HOST(一般是 localhost)、DB_NAME、DB_USER、DB_PASSWORD。

第九步:伪静态、SSL、目录权限收尾

这一步要做什么:处理站点能显示但页面 404、跳转异常的问题。

  • 伪静态:老面板「网站」→ 站点 →「设置」→「伪静态」,把规则整段复制到新面板同一位置
  • SSL:站点 →「SSL」,粘贴原来的证书和私钥,或点「Let's Encrypt」重新申请
  • 权限:SSH 执行 chown -R www:www /www/wwwroot/www.example.com,再把目录设成 755、文件设成 644。属主用户名以面板里已有站点为准,不确定就 ls -l /www/wwwroot/ 看一眼

第十步:本地验证后再切域名

这一步要做什么:在不影响线上访问的前提下确认新站没问题。

先改你自己电脑的 hosts 文件,把域名指向新服务器 IP,浏览器访问一遍首页、后台、登录、发文章、上传图片。全正常后,再去域名 DNS 处把解析记录改成新服务器 IP。

注意:切换解析前别停老服务器,等 DNS 生效(一般几分钟到几小时),确认新站稳定再关老机器。

小结

  • 迁移三要素:文件、数据库、配置文件连接信息,缺一个都跑不起来
  • 新旧服务器的 PHP 和 MySQL 版本尽量一致
  • 数据库账号密码建议保持一致,能省掉改配置这一步
  • 伪静态规则和 SSL 证书容易漏,是「首页能开、内页 404」的常见原因
  • 先改 hosts 验证,最后再改 DNS 解析
版权声明:本文来自 GJ站长论坛《小皮面板怎么迁移站点到另一台服务器》
原文链接:https://www.gj0.com/thread-1050.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~