小皮面板怎么迁移站点到另一台服务器
学完这篇,你能把小皮面板里的一整个站点——网站文件加数据库——完整搬到另一台服务器上并正常访问,包括域名切换前的验证方法。
迁移的本质只有三件事:把文件搬过去、把数据库搬过去、把配置文件里的连接信息对上。下面按步骤走。
第一步:在新服务器装好同版本环境
这一步要做什么:在新服务器上装好小皮面板,并保证 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 解析
原文链接:https://www.gj0.com/thread-1050.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。