下面我将为你提供一个完整、详细、适用于绝大多数情况的 WordPress 迁移指南,这个指南分为两种主要场景:

(图片来源网络,侵删)
- 迁移到新主机,并保持原域名不变 (最常见)
- 迁移到新主机,并更改域名 (稍微复杂)
核心迁移原理
无论哪种情况,WordPress 迁移的核心都包含三个部分:
- 文件:网站的所有程序文件、主题、插件、上传的图片等。
- 数据库:网站的所有内容,包括文章、页面、分类、标签、用户评论、设置等。
- 配置信息:数据库连接信息,存储在
wp-config.php文件中。
迁移到新主机,域名不变
这种情况最简单,因为不需要修改数据库中的域名。
第一步:在原主机上备份
-
备份文件
- 通过 FTP (如 FileZilla) 或主机的文件管理器,连接到你的网站。
- 将整个 WordPress 网站根目录(通常是
public_html或www文件夹)下载到你的电脑上,确保所有文件(包括.htaccess文件)都被完整下载。
-
备份数据库
(图片来源网络,侵删)- 登录你的原主机控制面板(如 cPanel, Plesk)。
- 找到“数据库”或“phpMyAdmin”工具。
- 在 phpMyAdmin 中,选择你的 WordPress 数据库。
- 点击“导出”选项卡。
- 选择“快速”或“自定义” - “快速”通常就足够了。
- 格式选择“SQL”,然后点击“执行”。
- 浏览器会下载一个
.sql文件,这就是你的数据库备份,保存好它。
第二步:在新主机上配置
-
创建新账户和数据库
- 登录你的新主机控制面板。
- 创建一个新的数据库、数据库用户,并为该用户授予对新数据库的所有权限,记下以下信息:
- 数据库名称
- 数据库用户名
- 数据库密码
- 数据库主机 (通常是
localhost,但请以主机商提供的为准)
-
上传文件
- 通过 FTP 或新主机的文件管理器,连接到新主机的网站根目录。
- 将你在第一步下载的 WordPress 文件夹内容全部上传到这个新根目录,如果新主机的根目录里已经有默认文件(如
index.html),请将其删除或覆盖。
第三步:导入数据库并修改配置
-
修改
wp-config.php文件- 在新主机的文件中找到
wp-config.php文件。 - 用文本编辑器(如 Notepad++, VS Code)打开它。
- 修改以下几行,使其与你新创建的数据库信息一致:
define('DB_NAME', '你的新数据库名'); define('DB_USER', '你的新数据库用户名'); define('DB_PASSWORD', '你的新数据库密码'); define('DB_HOST', 'localhost'); // 通常为 localhost,如果不是,请用主机商提供的 - 保存并上传这个修改后的
wp-config.php文件回服务器。
- 在新主机的文件中找到
-
导入数据库
(图片来源网络,侵删)- 登录新主机的 phpMyAdmin。
- 选择你刚才创建的那个新数据库。
- 点击“导入”选项卡。
- 选择你第一步下载的
.sql备份文件。 - 点击“执行”。
第四步:完成迁移并检查
- 清空缓存:如果你使用了任何缓存插件(如 WP Super Cache, W3 Total Cache),在新网站上先禁用它或清空所有缓存。
- 访问网站:在浏览器中访问你的网站,如果一切顺利,你应该能看到和原来一模一样的网站。
- 检查功能:
- 打开几篇文章,确保图片和链接正常。
- 登录后台,检查主题和插件是否正常工作。
- 检查网站设置(如“设置”->“常规”)中的 URL 是否正确(因为域名没变,所以这里应该没问题)。
完成! 网站已成功迁移到新主机。
迁移到新主机,并更改域名
这种情况比第一种多了一个关键步骤:搜索并替换数据库中的旧域名。
第一步和第二步:与场景一相同
执行场景一中的第一步(备份)和第二步(新主机配置),你的网站已经在新主机上,但使用的还是旧域名。
第三步:搜索并替换域名
这是最关键的一步,你不能简单地手动替换,因为域名可能存储在序列化的数据中,直接替换会导致数据损坏,强烈推荐使用专门的插件。
-
安装搜索替换插件
- 通过 FTP 或文件管理器,在新网站的
wp-content/plugins文件夹里创建一个名为search-replace的文件夹。 - 下载 Better Search Replace 插件,将其解压,然后把里面的文件上传到刚刚创建的
search-replace文件夹中。 - 或者,你也可以通过 WordPress 后台的“插件”->“添加插件”,搜索“Better Search Replace”或“Velvet Blues Update URLs”进行安装。
- 通过 FTP 或文件管理器,在新网站的
-
执行搜索替换
- 登录你的新网站后台。
- 在左侧菜单找到“工具” -> “Better Search Replace”。
- 搜索:输入你的旧域名(
http://www.old-domain.com)。 - 替换为:输入你的新域名(
https://www.new-domain.com)。 - 范围:选择“所有表”,确保不遗漏任何地方。
- 执行 dry run(试运行):先勾选这个选项,然后点击“执行搜索替换”,这个操作只显示会修改哪些内容,而不会真正修改数据库,检查一下结果是否正确。
- 执行替换:确认无误后,取消勾选“执行 dry run”,然后再次点击“执行搜索替换”,这次会真正修改数据库。
-
修改
wp-config.php文件- 与场景一相同,打开
wp-config.php文件,更新数据库连接信息。
- 与场景一相同,打开
-
导入数据库
- 与场景一相同,登录新主机的 phpMyAdmin,选择新数据库,然后导入你的
.sql备份文件。
- 与场景一相同,登录新主机的 phpMyAdmin,选择新数据库,然后导入你的
第四步:更新站点 URL 和主页 URL
虽然插件已经替换了大部分 URL,但为了确保万无一失,最好在数据库中直接修改这两个核心选项。
- 登录新主机的 phpMyAdmin。
- 选择你的 WordPress 数据库。
- 点击
wp_options表(如果你的表前缀不是wp_,请找到对应的前缀)。 - 在表中找到
option_name为siteurl和home的两条记录。 - 点击“编辑”,将
option_value字段中的值从旧域名改为新域名。 - 点击“执行”保存。
第五步:完成迁移并检查
- 清空缓存:清空所有缓存和 CDN 缓存。
- 访问新域名:在浏览器中访问你的新域名。
- 检查功能:与场景一相同,仔细检查所有页面、链接、图片和后台功能。
- 更新永久链接:进入后台“设置”->“固定链接”,可以点击一下“保存更改”,这会重新生成
.htaccess文件,确保链接结构正确。
推荐工具和注意事项
推荐工具
- All-in-One WP Migration:这是一个非常强大的插件,可以极大地简化迁移过程,特别是更改域名的迁移,它可以将整个网站(文件和数据库)打包成一个
.wpress文件,你可以轻松地将其导入到新主机上,很多主机商的后台也集成了这个工具的导入功能。 - Duplicator:另一个流行的迁移和备份插件,功能类似 All-in-One WP Migration。
重要注意事项
- 备份,备份,再备份! 在任何操作前,请务必备份好原网站的文件和数据库,这是防止灾难的最后一道防线。
- 检查文件权限:上传文件后,确保目录和文件的权限正确,通常目录权限为
755,文件权限为644,错误的权限会导致网站无法正常工作。 - 停用插件:在迁移完成后,如果遇到问题(如白屏),可以先通过 FTP 进入
/wp-content/plugins文件夹,将其重命名为plugins_old来临时禁用所有插件,然后再逐个启用排查问题。 - 使用相同的 PHP 版本:尽量在新主机上使用与原主机相同的 PHP 版本,以避免兼容性问题。
- DNS 更改:如果你更改了域名,不要忘记在域名注册商那里修改 DNS 服务器,指向你的新主机,这个过程可能需要 24-48 小时生效(DNS 传播时间)。
遵循以上步骤,你的 WordPress 网站迁移过程将会非常顺利,祝你成功!
