一、为什么要迁移WordPress网站?
WordPress网站迁移是许多站长都会遇到的问题,常见原因包括:
- 更换服务器或主机商
- 从本地环境迁移到线上服务器
- 网站合并或拆分
- 提升网站性能(如切换到更快的服务器)
无论出于何种原因,正确的迁移方法能确保网站数据完整、避免停机影响用户体验。
二、WordPress迁移前的准备工作
- 备份网站数据
- 使用插件(如UpdraftPlus、All-in-One WP Migration)备份数据库和文件
- 手动导出数据库(通过phpMyAdmin)
- 下载wp-content/uploads等核心目录
- 记录关键信息
- 数据库名称、用户名、密码
- WordPress配置文件(wp-config.php)中的参数
- 选择新服务器环境
- 确保PHP版本、MySQL/MariaDB版本兼容
- 推荐使用相同操作系统(如Linux)以减少兼容性问题
三、5种常见迁移方法详解
方法1:使用插件一键迁移(适合新手)
推荐插件:Duplicator、All-in-One WP Migration 步骤:
- 在原网站安装插件并生成备份包
- 在新服务器安装空白WordPress
- 通过插件导入备份包
✅ 优点:操作简单,无需技术基础 ❌ 缺点:大网站可能超限(免费版通常有大小限制)
方法2:手动迁移(经典方式)
步骤:
- 通过FTP/SFTP下载全部网站文件
- 导出数据库(phpMyAdmin > 选择数据库 > 导出)
- 上传文件到新服务器
- 创建新数据库并导入数据
- 修改wp-config.php中的数据库连接信息
⚠️ 注意:
- 替换文件中所有旧域名(可用
Better Search Replace
插件) - 检查.htaccess文件权限
方法3:SSH命令行迁移(高效方案)
# 压缩原网站文件
tar -czvf site_backup.tar.gz /var/www/html
# 通过SCP传输到新服务器
scp site_backup.tar.gz user@newserver:/path/to/destination
# 解压并导入数据库
mysqldump -u username -p old_db > backup.sql
mysql -u username -p new_db < backup.sql
方法4:主机商提供的迁移服务
多数主流主机(如SiteGround、Bluehost)提供免费迁移服务,只需提交工单即可。
方法5:克隆到本地开发环境
工具:Local by Flywheel、XAMPP 适用于需要本地调试的场景。
四、迁移后必检项
- 域名解析
- 修改DNS记录或服务器IP绑定
- 临时可通过hosts文件测试
- 链接修复
-- 在数据库中执行替换(示例)
UPDATE wp_options SET option_value = replace(option_value, 'http://旧域名','https://新域名');
UPDATE wp_posts SET post_content = replace(post_content, 'http://旧域名','https://新域名');
- 功能验证
- 检查固定链接是否生效
- 测试表单提交、支付等动态功能
- 更新CDN/缓存配置
五、常见问题解决方案
❌ 问题1:出现”建立数据库连接错误” → 检查wp-config.php中的数据库配置,确认MySQL服务已启动
❌ 问题2:图片/样式丢失 → 使用Velvet Blues Update URLs插件批量替换资源路径
❌ 问题3:重定向循环 → 清除.htaccess中的冗余规则,更新SSL证书
六、高级技巧:零停机迁移
对于高流量网站,可采用:
- DNS TTL提前调低(如设为300秒)
- 使用临时域名完成迁移测试
- 通过Cloudflare等CDN实现流量切换
通过以上步骤,即使是技术小白也能安全完成WordPress迁移。建议首次操作前在测试环境演练,遇到问题可查阅WordPress官方迁移文档或寻求专业支持。