云服务器网站迁移完整教程(备份→搬家→切换域名,适用于宝塔/原生Linux,PHP网站:WordPress、织梦、Typecho、苹果CMS、Discuz等)
云服务器网站迁移完整教程(备份→搬家→切换域名,适用于宝塔/原生Linux,PHP网站:WordPress、织梦、Typecho、苹果CMS、Discuz等)
核心思路:旧机完整备份(网站文件+数据库)→新机部署环境→上传恢复文件+导入数据库→修改网站配置→测试访问→解析域名,最后保留旧服务器7天做回滚
推荐环境:CentOS7/8、Debian、Ubuntu,宝塔面板最简单;如果不用宝塔,文末附原生命令版。

一、迁移前准备
- 两台云服务器:旧服务器(源)、新服务器(目标),同架构最好(都是Linux)
- 新服务器提前放行端口:80、443、22、3306(安全组/防火墙)
- 记录旧站关键信息:
- 网站根目录路径(如
/www/wwwroot/域名) - 数据库名、数据库账号、密码(
wp-config.php/config.php里) - PHP版本、MySQL版本(尽量新旧版本一致,避免报错)
- 域名DNS服务商账号(后面改解析)
- 网站根目录路径(如
- 重要原则:迁移期间不要在网站新增数据;正式切换前旧服务器保持运行
第一部分:旧服务器【网站数据备份】
方式A:宝塔面板备份(推荐新手)
- 备份网站文件
- 登录旧服务器宝塔面板 → 网站 → 找到你的站点
- 点击备份,选择备份网站(勾选:网站目录)
- 备份完成后,在【文件】→【备份目录】下载压缩包到本地电脑,或者直接打包后传到新服务器。
备选手动打包:文件管理器进入网站根目录,全选压缩为
webfile.zip
- 备份MySQL数据库
- 宝塔 → 数据库 → 找到对应数据库 → 备份
- 导出
.sql数据库备份文件
⚠️ 优先导出sql,不要只用面板整机备份,跨服务器恢复容易出问题。
【重要】把
webfile.zip+xxx.sql两个文件保存好。
方式B:Linux命令手动备份(无宝塔)
① 打包网站文件
进入网站目录,打包,示例路径自行替换
cd /www/wwwroot/yourdomain
tar -zcvf webfile.tar.gz .
② 导出数据库(替换账号、库名)
mysqldump -u数据库账号 -p 数据库名 > backup.sql
输入数据库密码,生成backup.sql
打包完成后,用 sz 下载到本地,或者scp传到新服务器。
可选:直接跨服务器传输文件(不用下载本地)
在旧服务器执行,传到新机(新机IP、ssh账号密码)
scp webfile.tar.gz root@新服务器IP:/root/
scp backup.sql root@新服务器IP:/root/
第二部分:新服务器环境部署
目标:新服务器环境和旧服务器尽量保持一致(PHP版本、数据库版本、Nginx/Apache)
宝塔环境部署
- 登录新服务器ssh,安装宝塔面板(官网脚本)
- 进入宝塔面板 → 软件商店,安装:
- Nginx(推荐)或 Apache
- MySQL 5.7 / 8.0(和旧机一致)
- PHP(和旧网站一致版本,如PHP7.4 / PHP8.1)
- 添加站点:网站 → 添加站点,填写域名,先不要解析,数据库这里可以选择「创建数据库」,记下新机数据库账号密码(后面修改网站配置)
不要直接覆盖文件,先新建站点!
原生Linux环境(不使用宝塔)
- 安装Nginx + MySQL + PHP对应版本
- Nginx新建站点配置文件,配置root网站目录
- 登录mysql,手动创建空数据库、数据库用户,赋予权限
CREATE DATABASE 新库名 DEFAULT CHARACTER SET utf8mb4;
CREATE USER '新用户'@'localhost' IDENTIFIED '密码';
GRANT ALL PRIVILEGES ON 新库名. TO '新用户'@'localhost';
FLUSH PRIVILEGES;
第三部分:新机恢复网站文件 + 导入数据库
- 上传网站文件
宝塔操作 - 文件管理器进入新站点网站根目录
- 上传
webfile.zip,解压,覆盖目录
✅ 注意:解压后检查,网站文件要直接在根目录,不要套一层文件夹!(常见坑:压缩包里面还有一层文件夹,访问404)
命令行
进入站点目录
cd /www/wwwroot/yourdomain
上传webfile.tar.gz到这里,解压
tar -zxvf webfile.tar.gz
- 导入数据库
宝塔导入 - 数据库 → 找到新创建的数据库 → 导入
- 选择上传
backup.sql文件,执行导入。
如果sql文件很大,建议用命令导入,宝塔大文件上传容易超时。
命令行导入(大数据库首选)
登录mysql导入
mysql -u新机数据库账号 -p 新机数据库名 < backup.sql
输入密码等待完成。
- 修改网站数据库配置文件【最关键一步】
网站程序需要改成新服务器数据库信息
找到网站配置文件,不同程序路径:
- WordPress:
wp-config.php - Typecho:
config.inc.php - 苹果CMS:
application/database.php - Discuz:
config/config_global.php - 织梦:
data/common.inc.php
修改里面四项:
数据库名 = 新服务器数据库名
数据库用户 = 新服务器数据库账号
数据库密码 = 新服务器数据库密码
数据库主机:localhost(大部分情况不用改)
保存文件。
- 权限设置(Linux必做,否则500/空白页)
宝塔
网站 → 设置 → 目录权限:
网站目录权限 755,文件权限 644,运行用户www。
命令行
进入网站根目录执行
chown -R www:www /www/wwwroot/yourdomain
chmod -R 755 /www/wwwroot/yourdomain
-
Nginx伪静态配置
宝塔网站设置 → 伪静态,选择对应程序规则(WP、Typecho、Discuz),和旧服务器保持一致,否则url打不开。 -
测试访问(先不解析域名!用hosts本地测试)
⚠️ 不要直接改域名解析!先本地hosts测试,确保网站在新机正常打开
Windows修改hosts
路径:C:\Windows\System32\drivers\etc\hosts
用记事本打开,在末尾添加一行:
新服务器IP 你的域名 shturl.cc/N
保存。然后浏览器访问域名,此时访问的是新服务器网站。
✅ 检查项:
- 首页正常打开
- 内页链接、图片、附件全部正常
- 后台可以正常登录
- 提交表单、评论功能正常
- 无报错、无乱码(乱码一般是数据库字符集utf8mb4问题)
测试有问题:排查PHP版本、伪静态、数据库账号密码、文件权限。没测试通过不要切换解析!
测试完毕后,记得删掉hosts里面这一行。
第四部分:切换域名解析 + 切换后校验
- 登录域名服务商(阿里云/腾讯云/Cloudflare),修改A记录:
将域名A记录,旧服务器IP → 修改为新服务器公网IP - DNS解析生效时间:几分钟~24小时(TTL越小越快,建议提前把TTL改成600)
解析生效期间,一部分用户访问旧服务器,一部分访问新服务器。迁移期间停止发布新文章,防止两边数据不同步。
切换完成后检查
- 访问网站、后台
- HTTPS证书:宝塔申请SSL,绑定域名,强制HTTPS(和旧站一致)
- robots.txt、sitemap、图片CDN地址(如果有CDN,CDN源站IP改成新服务器)
- 检查网站日志,看是否大量404、500错误
第五部分:迁移收尾与回滚方案(非常重要)
✅ 旧服务器不要立刻删除!保留7天
- 7天内网站一切正常:再考虑销毁旧服务器实例、备份删除
- 出现重大故障:改回域名A记录到老IP,快速回滚
迁移后优化可选操作
- 清除网站缓存(WP缓存插件、cms后台缓存)
- 重新生成站点地图sitemap,提交搜索引擎
- 检查服务器定时任务(宝塔计划任务:备份、采集等,需要在新机重建计划任务)
重点:旧服务器的定时任务不要同步运行,会同时读写两边数据库。
常见坑&排错清单
- 网站空白/500错误:PHP版本不对、文件权限不足、配置文件数据库信息写错
- 图片不显示:路径问题、防盗链、hosts测试时浏览器缓存,Ctrl+F5强制刷新
- 数据库乱码:导出和导入字符集不一致,统一使用utf8mb4
- 登录后台提示密码错误:数据库导入失败,重新导入sql
- 404页面:伪静态没有配置、网站文件放错文件夹
- 上传附件失败:PHP上传限制、目录权限
可选进阶:增量迁移(大型网站,减少停机时间)
适合数据量大、不能长时间停机网站:
- 第一次全量备份迁移(如上步骤),hosts测试正常
- 旧服务器开启增量同步(rsync同步网站文件,mysqldump增量导出数据库),把切换解析前新增数据同步到新机
- 短暂停机,最后一次同步,切换域名解析,缩短网站中断时间。

云服务器网站迁移完整教程(备份→搬家→切换域名,适用于宝塔/原生Linux,PHP网站:WordPress、织梦、Typecho、苹果CMS、Discuz等)
> 核心思路:旧机完整备份(网站文件+数据库)→新机部署环境→上传恢复文件+导入数据库→修改网站配置→测试访问→解析域名,最后保留旧服务器7天做回滚
> 推荐环境:CentOS7/8、Debian、Ubuntu,宝塔面板最简单;如果不用宝塔,文末附原生命令版。
浙公网安备 33010602011771号