wdcp迁移服务器的核心就三件事:打包网站目录、导出数据库、在新服务器还原并修正配置,按这套流程走,数据不会丢,站点也能快速恢复。
很多站长听到换服务器就发怵,其实WDCP面板的迁移比想象中简单,整站迁移教程的思路不复杂,关键是路径、权限和PHP版本别搞混,下面把每一步拆开讲,照做就能完成。
wdcp网站搬家到新服务器前的准备工作
确认新旧服务器环境差异
新旧服务器的WDCP版本最好一致,或者新服务器版本稍高,版本差太远,后台配置结构和默认路径可能有变化,重点核对三项:
- PHP版本:旧站如果基于PHP5.6,新服务器默认选PHP7.4就可能白屏。
- MySQL版本:5.5导出的数据导入5.7一般问题不大,反过来要小心语法兼容。
- 网站目录路径:WDCP默认网站根目录是
/www/web/站点目录,新服务器路径变了会影响配置文件。
备份前必须检查的三件事
迁移前花十分钟检查,能避开后期一多半的坑。
- 用
du -sh /www/web/你的站点目录查看网站文件总大小,确认新服务器磁盘够用。 - 在WDCP后台查看数据库大小,判断导出文件是否会过大。
- 如果站点启用了HTTPS,证书文件通常放在
/www/wdlinux/nginx/conf/cert/或站点目录内,需要一并打包迁移。
业内专家指出,WDCP迁移失败案例中,多数根因是新旧环境不一致,而不是操作命令本身出错。
wdcp迁移服务器详细步骤:整站打包与导出
第一步:打包网站文件
登录旧服务器SSH,进入网站父目录执行打包命令:
cd /www/web/ tar czf site_backup.tar.gz 你的站点目录名
如果网站目录里缓存文件夹很大,可以排除掉,能省不少传输时间:
tar czf site_backup.tar.gz --exclude=你的站点目录名/runtime --exclude=你的站点目录名/logs 你的站点目录名
打包完成后,确认site_backup.tar.gz文件存在,大小与预期差不多即可。
第二步:导出MySQL数据库
在旧服务器执行导出命令:
mysqldump -u root -p 数据库名 > db_backup.sql
数据库名可以在WDCP后台的“数据库列表”里查到,为了防止中文乱码,建议加上字符集参数:
mysqldump -u root -p --default-character-set=utf8mb4 数据库名 > db_backup.sql
如果数据库较大,可以加--single-transaction参数避免锁表,导出后用ls -lh db_backup.sql看看文件大小,正常情况下应该有内容。
第三步:传输备份文件到新服务器
用scp命令直接传输,适合两台Linux服务器之间操作:
scp site_backup.tar.gz db_backup.sql root@新服务器IP:/www/web/
传输过程如果网络不稳,可以改用rsync:
rsync -avP site_backup.tar.gz db_backup.sql root@新服务器IP:/www/web/
文件传到新服务器后,迁移的大头就算完成了一半。
wdcp数据库迁移方法及常见坑
数据库导入时的权限与字符集问题
先在新服务器WDCP后台创建一个和旧站同名的数据库,并创建同名数据库用户,这样能减少后续修改网站配置的麻烦,如果后台操作不习惯,也可以命令行创建:
mysql -u root -p CREATE DATABASE 数据库名 DEFAULT CHARACTER SET utf8mb4; GRANT ALL PRIVILEGES ON 数据库名. TO '数据库用户'@'localhost' IDENTIFIED BY '你的密码'; FLUSH PRIVILEGES; EXIT;
然后导入数据:
mysql -u root -p --default-character-set=utf8mb4 数据库名 < db_backup.sql
行业共识认为,数据库迁移时字符集问题是最高频的坑,导出和导入最好都显式指定utf8mb4,否则中文内容可能变成乱码。
修改网站配置文件中的数据库连接信息
网站程序根目录下的config.php、database.php、.env等文件,通常存着数据库连接参数,如果新服务器的数据库名、用户名、密码和旧服务器完全一致,可以跳过这步,如果不一致,需要手工打开这些文件,修改对应的数据库地址、用户名和密码。
改完后保存,再继续下一步。
新服务器上还原wdcp网站的核心操作
创建站点并上传文件
在新服务器WDCP后台新建站点,域名填写和旧站一致,PHP版本选择与旧站相同的版本,伪静态功能如果旧站开启过,这里也要勾选对应设置。
解压上传的网站文件包,覆盖到新站点目录:
cd /www/web/ tar xzf site_backup.tar.gz -C /www/web/你的站点目录名
解压后先不急着访问,文件权限还没调整。
导入数据库并调整用户权限
按照上面的导入命令把数据库还原到新服务器,如果之前在后台创建了同名库和用户,权限已经正常,直接访问网站时数据库连接一般不会出错。
修改文件所有者和权限
WDCP默认网站文件属主是www用户和www组,解压出来的文件属主通常是root,需要改回去:
chown -R www:www /www/web/你的站点目录名
目录权限统一设为755,文件设为644:
find /www/web/你的站点目录名 -type d -exec chmod 755 {} ;
find /www/web/你的站点目录名 -type f -exec chmod 644 {} ;
个别程序如ThinkPHP的runtime目录、WordPress的uploads目录需要写权限,可以单独设为775或777,改完后大部分站点就能正常打开了。
wdcp搬家后网站打不开怎么办:排错清单
检查域名解析与防火墙
域名A记录是否已经指向新服务器IP,用ping 你的域名看到新IP才算解析生效,如果解析没问题,继续查服务器安全组和WDCP后台防火墙,确认80和443端口放行。
检查伪静态规则
WDCP后台站点设置里,伪静态规则默认可能没自动复制,打开旧站后台,把原来配置的伪静态规则原样抄到新站点对应输入框,保存后重启Nginx或Apache服务。
检查PHP版本不兼容
老站用PHP5.6,迁到新服务器如果默认选了PHP7.4,可能出现语法报错或白屏,回到WDCP后台切换PHP版本,找到和旧站一致的版本,重启PHP-FPM后刷新页面。
迁移过程中常见故障和处理方式可以整理成一张表:
| 现象 | 可能原因 | 处理方式 |
|---|---|---|
| 网站无法访问 | 域名未解析到新服务器 | 修改A记录并等待生效 |
| 打开提示数据库错误 | 数据库密码或用户名不一致 | 检查网站配置文件 |
| 页面中文乱码 | 导出导入未指定字符集 | 重新用utf8mb4导出导入 |
| 404或URL打不开 | 伪静态规则缺失 | 复制旧站伪静态规则 |
| 白屏或500错误 | PHP版本不匹配 | 切换成旧站相同PHP版本 |
排查顺序建议从外到内:解析、防火墙、数据库、伪静态、PHP版本,多数问题会在前三步浮出水面。
迁移WDCP服务器,不是靠运气,而是靠流程,只要打包、导出、导入、还原四步不落,环境参数对齐,网站换服务器就像搬一次家,搬完就能住。
wdcp迁移服务器详细步骤中哪一步最容易出错?
最容易出错的是数据库字符集不一致,很多站长在导出数据库时没有指定--default-character-set=utf8mb4,导致导入后中文内容乱码,解决方法是导出和导入都显式加上这个参数,并且在创建新数据库时也指定utf8mb4字符集。
wdcp搬家后网站打不开是什么原因?
常见原因集中在域名解析未生效、服务器防火墙未放行、PHP版本不匹配三方面,先ping域名确认IP是否已指向新服务器,再检查安全组和WDCP后台防火墙,最后查看网站错误日志确认是不是语法或版本问题。
从wdcp迁移到宝塔面板有必要吗?
看个人使用习惯,宝塔面板的可视化操作和插件生态更丰富,WDCP则资源占用相对较低,适合轻量云服务器,如果只是为了换服务器,不一定要换面板,直接按本文流程在WDCP之间迁移即可,成本最低。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/641604.html




