很多人在买了云服务器后,第一件事就是想把原来的老WordPress网站搬过去。但一看到要动文件、数据库、权限、域名这些,就有点懵。其实只要步骤清楚、操作仔细,搬家过程完全可控,也不会丢数据。
这篇文章就专门讲清楚:怎么在云服务器上把WordPress完整迁移过去,包括文件、数据库、配置修改、缓存清理这些关键动作,每一步都用你能看懂的话说明白。
搬家前先搞清楚你手上有啥
在动手之前,先确认你能不能拿到旧网站的全部控制权。不然做到一半发现连数据库都导不出,那就白忙了。
- 旧站的文件访问权限:你得能进旧服务器的文件系统,不管是通过宝塔面板、cPanel、还是FTP/SFTP账号,至少要能下载整个网站目录。
- 数据库管理权限:必须能进phpMyAdmin或者有命令行权限导出SQL文件。WordPress的数据全在数据库里,没这个就搬不完整。
- 新云服务器已创建好:操作系统(一般选Linux)、公网IP、SSH登录权限这些都得准备好。
- 新环境基础软件装好:比如Nginx/Apache、PHP(建议7.4或8.0以上)、MySQL/MariaDB,这些是WordPress跑起来的“地基”。
第一步:把旧网站的文件完整打包下载
WordPress的核心文件就那几个目录:wp-admin、wp-includes、wp-content,还有wp-config.php、.htaccess这些配置文件。全都要搬。
如果你用的是宝塔面板,操作最简单:
- 登录宝塔,点“网站”找到你的站点,进“根目录”(通常是
/www/wwwroot/你的域名)。 - 全选所有文件和文件夹(Ctrl+A),点顶部“压缩”,格式选zip,名字比如叫
wp-site.zip。 - 压缩完直接点“下载”,存到你电脑上。
如果是用FTP(比如FileZilla):
- 连上旧服务器,进网站根目录(一般是
public_html或/var/www/)。 - 把整个文件夹拖到本地电脑,确保wp-content里的上传图片、主题、插件都在。
第二步:导出WordPress数据库
这一步最关键,数据库一丢,文章、评论、设置全没了。
同样,宝塔用户最方便:
- 在宝塔左侧点“数据库”,找到你网站对应的数据库,点“管理”。
- 会自动跳转到phpMyAdmin,选中你的数据库名(比如
wp_site_db)。 - 点顶部“导出” → 格式选SQL → 点“执行”,就会自动下载一个
.sql文件。
如果你没面板,得自己装phpMyAdmin,那就在新服务器先别急着搬,先在旧服务器上确保能导出。命令行导出也行:
mysqldump -u用户名 -p 数据库名 > wp_backup.sql
输完密码后,wp_backup.sql就生成了,用scp或FTP下载到本地。
第三步:在新云服务器搭好运行环境
新服务器不能光有系统,得把Web服务、PHP、数据库都配好。这里以常见的LNMP(Linux + Nginx + MySQL + PHP)为例。
- 装Nginx:
sudo apt install nginx - 装MySQL:
sudo apt install mysql-server,然后运行sudo mysql_secure_installation设密码。 - 装PHP和常用扩展:
sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip
接着创建新的数据库和用户:
sudo mysql -u root -p
CREATE DATABASE new_wp_db;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY '强密码';
GRANT ALL PRIVILEGES ON new_wp_db. TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
再配好Nginx站点文件,把root路径指向比如/var/www/your-site,并确保PHP能处理.php请求。
第四步:上传文件 + 导入数据库
把之前下载的wp-site.zip上传到新服务器的网站根目录,比如/var/www/your-site,然后解压:
unzip wp-site.zip -d /var/www/your-site
再把文件权限设对,避免WordPress写不了缓存或上传不了图片:
sudo chown -R www-data:www-data /var/www/your-site
接着导入数据库:
mysql -u wp_user -p new_wp_db < wp_backup.sql
输密码后,数据就进去了。这一步如果报错,多半是SQL文件里有旧的字符集或引擎问题,可以先用文本编辑器打开SQL文件,把开头的CREATE DATABASE和USE语句删掉,只留表结构和数据。
第五步:改配置文件,连新数据库
旧的wp-config.php里连的是老数据库,现在得改成新的。
用nano或vim打开它:
sudo nano /var/www/your-site/wp-config.php
找到这三行,改成你新创建的数据库信息:
define('DB_NAME', 'new_wp_db');
define('DB_USER', 'wp_user');
define('DB_PASSWORD', '强密码');
其他比如数据库主机(一般还是localhost)不用动,除非你用的是远程数据库。
第六步:清缓存、测访问、处理域名
如果旧站用了缓存插件(比如W3 Total Cache、WP Super Cache),搬家后必须清空缓存,否则可能看到旧内容或报错。
方法有两个:
- 进WordPress后台 → 插件设置页面 → 找“清空所有缓存”按钮点一下。
- 如果进不去后台,就直接删缓存文件夹,比如
wp-content/cache。
然后用浏览器访问你的新服务器IP或绑定的域名,看首页能不能打开。
如果打不开,常见问题:
- Nginx没reload:
sudo systemctl reload nginx - PHP没跑起来:
sudo systemctl status php8.1-fpm(版本号按你装的改) - 文件权限不对:确保www-data用户有读权限
如果页面能打开但图片404,可能是wp-content/uploads没搬全,回去检查旧站文件是否完整下载。
特别提醒:如果换了域名怎么办?
很多人搬家顺便换域名。这时候光改DNS还不够,数据库里还存着旧域名,会导致图片不显示、后台进不去。
解决方法是在导入数据库后,用SQL命令批量替换:
UPDATE wp_options SET option_value = replace(option_value, 'http://旧域名.com', 'https://新域名.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = replace(post_content, 'http://旧域名.com', 'https://新域名.com');
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://旧域名.com', 'https://新域名.com');
注意:表前缀不一定是wp_,如果你改过,要替换成你自己的前缀。
或者用All-in-One WP Migration插件(两边都装),导出时选“文件”,导入时自动处理域名替换,更省心。
总结:搬家核心就三件事
其实WordPress搬家没那么复杂,核心就三点:
- 文件全搬:包括主题、插件、上传内容,一个都不能少。
- 数据库完整迁移:导出、导入、连对新库。
- 配置和缓存处理到位:改wp-config.php,清缓存,换域名要替换。
只要按这个流程走,哪怕你是第一次操作云服务器,也能把WordPress稳稳当当搬过去。搬完记得测试所有页面、后台、上传功能,确保一切正常再切正式流量。
腾讯云服务器推荐
多配置可选 · 性价比优选 · 长期稳定