WordPress 站点克隆教程:2 种方法快速复制网站到新服务器

你为什么需要克隆 WordPress 网站?

「克隆网站」听起来很技术,但实际上有很多平时的使用场景:

场景一:换服务器/主机商

主机到期,价格涨了,或者找到了速度更好的新服务器——需要把整个站搬过去,数据一条不丢。

场景二:建立暂存站(Staging Site)

在正式上线的外贸站旁边克隆一个「测试站」,所有主题更新、插件新版、页面改版先在暂存站测试,没问题了再同步到正式站,彻底消除「更新后样式崩了」的风险。

场景三:基于成熟站复制新站

你给第一个客户做了一个外贸展示站,配置好了 WordPress + Elementor + 主题 + 所有必要插件,现在第二个客户也需要类似的站——直接克隆第一个站,修改内容,省去重新搭环境的时间。

本文提供的两种方法:

方法工具适合场景技术门槛
方法一:Duplicator 插件Duplicator Lite(免费)所有场景,换主机首选⭐ 极低
方法二:宝塔面板 手动迁移宝塔面板 + phpMyAdminVPS 用户,大型站点⭐⭐⭐ 中等

如果你之前用过 All-in-One WP Migration,可以参考:All-in-One WP Migration 插件教程。 两款插件逻辑相似,主要区别是 Duplicator 免费版没有文件大小限制,对有大量产品图片的外贸站更友好。

方法一:Duplicator 插件(推荐,适合所有人)

插件下载地址: https://wordpress.org/plugins/duplicator/

安装量: 1,000,000+(免费版) 评分: 4.9/5

免费版限制: 无文件大小限制(这是相对 All-in-One WP Migration 最大的优势)

Duplicator 的工作逻辑和 All-in-One WP Migration 不同:它把你的整个站点打包成两个文件(一个 archive 归档文件 + 一个 installer.php 安装文件),上传到目标服务器后,直接运行 installer.php,全程引导你完成安装,目标服务器甚至不需要预先安装 WordPress。

第一步:在原站安装 Duplicator

WordPress 后台 → 插件 → 安装插件 → 搜索 Duplicator → 找到作者为 Syed Balkhi 的插件 → 安装并启用

如果你还不会安装插件可以参考:WordPress 插件安装教程

wp duplicator

第二步:创建站点包(Package)

进入 WordPress 后台 → Duplicator → Packages → 点击右上角 「Create New」

wp duplicator 1

进入创建向导,有三个步骤:

Setup(设置)

选项说明建议
Storage包存储位置(本地默认)保持默认,存在服务器本地
Installer安装程序设置保持默认
Archive归档文件设置可以在 Filter 里排除不需要的目录,如 /wp-content/uploads/backup-*

💡 如果站点很大,可以在 Archive → Filter 里把备份目录、日志文件排除,减小包的体积,加快打包速度。(如果你想备份到网盘则需要升级插件到Pro版本)

wp duplicator 2

Scan(扫描)

Duplicator 自动扫描你的站点,检查是否有潜在的迁移问题:

  • 🟢 Good → 没有问题
  • 🟡 Warn → 有警告,通常不影响迁移,确认后可继续
  • 🔴 Fail → 有阻碍性问题,需要先解决

常见 Warn 原因:文件过大(单个文件超过 10MB)、数据库表有损坏记录。大多数 Warn 不影响迁移,勾选「I have read all warnings」确认后继续。

wp duplicator 3

Build(打包)

点击 「Build」 开始打包,等待进度条完成(时间取决于站点大小,几十秒到几分钟不等)。

wp duplicator 4

打包完成后,下载两个文件:

  • backup_yourdomain_xxxxxxxx_archive.zip(归档文件,包含所有内容)
  • installer.php(安装程序文件)

这两个文件都必须下载,缺一不可。

wp duplicator 5

第三步:在目标服务器上准备环境

如果你服务器是 VPS + 宝塔面板:

  1. 在 aaPanel 里新建一个空白网站(只建站点,不需要安装 WordPress)
    • 路径:宝塔面板 → 网站 → 添加站点 → 填写新域名,PHP 版本根据你安装的版本选选择。
  2. 在 宝塔面板 → (数据库)phpMyAdmin 里新建一个空数据库(记录数据库名、用户名、密码)

前提域名已解析到服务器IP,如果你还不会可参考:域名解析教程
如果你还没有域名,可查看:域名指南

可参考教程:宝塔面板添加网站, 宝塔创建站点, 宝塔新建数据库

如果你服务器是虚拟主机(cPanel):

  1. 在 cPanel → Domains 里新建一个空域名或子目录
  2. 在 MySQL Databases 里新建数据库和用户

目标服务器不需要预装 WordPress ——这是 Duplicator 的优势,它的安装程序会处理所有 WordPress 的安装工作。

第四步:上传两个文件到目标服务器

archive.zipinstaller.php 上传到目标网站的根目录/www/wwwroot/yourdomain.com/)。

上传方式:

  • 宝塔面板 文件管理:进入对应站点根目录 → 上传
wp duplicator 6

第五步:运行安装程序完成克隆

在浏览器打开:http://新域名/installer.php
如果你给域名安装了免费的证书 请使用:https://新域名/installer.php

Duplicator 安装向导分为2步:

Step 1:Setup

填写目标服务器的数据库信息:

  • Host:localhost(大多数情况)
  • Database:你刚才新建的数据库名
  • Username:数据库用户名
  • Password:数据库密码

填完点「Validate」验证。

wp duplicator 7

验证通过后点「 Next  」下一步,弹出窗口直接点击 OK。

⚠️ 注意:Duplicator 会清空你填写的数据库,确保填写的是新建的空数据库,不是原站的数据库!

wp duplicator 8

Step 2:Install

Duplicator 自动执行:

更新 wp-config.php 的数据库连接信息

解压 archive.zip

导入数据库

等待安装完成。

wp duplicator 9

用户名和密码是原站的用户名和密码。

Step 3:Test Site & Save Permalinks(关键步骤!)

这一步非常重要:

  1. 点「Admin Login」进入新站后台
  2. 进入 设置 → 固定链接,不做任何修改,直接点「保存更改」
  3. 这个操作刷新了 WordPress 的 Rewrite 规则,让所有页面 URL 正常工作

如果跳过这步,新站的所有文章和页面 URL 会返回 404 错误。

如果新旧域名不同(最常见的迁移情况):

Duplicator 会在 Step 3 自动检测到新旧域名差异,并提供 URL 替换选项。在「Old URL」填原来的域名,「New URL」填新域名,点「Replace Data」,Duplicator 自动替换数据库里所有的旧 URL。

第六步:清理安装文件

安装完成后,必须删除以下文件(留着是安全隐患):

wp duplicator 10

通过 宝塔面板 文件管理器或者 XFTP 手动删除。只有所有安装文件完全删除后, 安装才算完成。

方法二:宝塔面板 手动迁移(VPS 用户,适合大型站点)

可将在宝塔备份的网站文件和数据库文件下载到本地。在新服务器上传解压网站文件,导入数据库文件。

如果你还不会备份站点可参考:宝塔面板网站备份与恢复教程

在新服务器建站环境

① 新建站点

宝塔米板 → 网站 → 添加站点

  • 域名:填新域名
  • PHP 版本:选你安装的版本。
  • 数据库:选「创建数据库」,自动创建并记录数据库名/用户名/密码

可参考教程:宝塔面板添加网站, 宝塔创建站点, 宝塔新建数据库

② 上传文件

网站备份 上传到新站根目录,然后解压:

通过 宝塔面板 文件管理器上传并解压,或者在 SSH 执行:

bash

注意解压后确认文件结构正确(wp-adminwp-contentwp-includes 应该在根目录下,不是在子文件夹里)。解压后得到跟原站一样的网站目录。

wp duplicator 11

导入数据库并配置

① 在新服务器导入数据库

宝塔面板 → 数据库 → 选择新建的数据库 → 导入 → 选择你备份好的数据库 .sql 文件 → 执行

大型数据库(超过 50MB)可能需要调整 phpMyAdmin 的上传限制,或者通过 SSH 命令行导入:

bash

② 修改 wp-config.php

打开新站根目录的 wp-config.php,检查数据库信息是否是新服务器的数据库信息。

wp duplicator 12

③ 替换数据库里的旧 URL(如果换了域名)

数据库里有大量地方存储了旧域名(文章内容、媒体 URL、选项设置),需要统一替换。

最安全的方式是用 Better Search Replace 插件

可参考:WordPress批量查找替换教程

或者在 SSH 里用 WP-CLI 命令(需要服务器已安装 WP-CLI):

bash

④ 刷新固定链接

进入新站后台 → 设置 → 固定链接 → 不做任何修改 → 直接保存更改

迁移完成后必做的 5 件事

不管用哪种方法,迁移完成后按这个清单逐一验证:

✅ 检查 1:网站能正常访问 用无痕浏览器窗口打开新域名,确认首页、产品页、联系页都能正常加载,没有 404 错误。

✅ 检查 2:后台能正常登录 访问 https://新域名.com/wp-admin,用原账号密码登录,确认后台功能正常。

✅ 检查 3:媒体文件是否完整 随机点开几篇文章,检查图片是否正常显示。图片 404 是迁移中最常见的问题之一,通常是 URL 替换遗漏导致的。

✅ 检查 4:联系表单是否正常工作 提交一次联系表单测试,确认你的邮箱能收到表单通知邮件。迁移后 SMTP 配置有时需要重新验证。

✅ 检查 5:SSL 证书是否正常 确认浏览器地址栏显示「锁」的图标,不是「不安全」警告。新服务器需要重新申请 SSL 证书(aaPanel 通过 Let’s Encrypt 一键申请,可参考:WordPress 安装后必做的 10 项核心配置)。

常见报错与解决方案

克隆后所有页面返回 404

WordPress 固定链接 Rewrite 规则没有更新。 解决: 后台 → 设置 → 固定链接 → 直接点「保存更改」,不需要修改任何内容,这个操作会重写 .htaccess 里的规则。

后台登录后立刻跳回登录页(登录循环)

wp-config.php 里的 WP_HOMEWP_SITEURL 和数据库里的设置不一致,或者 Cookie 配置有问题。 解决: 检查 wp-config.php 里的域名是否正确;或者在数据库 wp_options 表里找 siteurlhome 两个字段,确认它们的值是新域名。

图片或媒体文件无法显示

数据库里的媒体 URL 还是旧域名,没有被替换;或者文件权限问题。 解决: ① 用 Better Search Replace 把旧域名替换成新域名(参见方法二第三部分) ② 在 aaPanel 里检查 wp-content/uploads/ 目录的文件权限是否为 755(目录)/ 644(文件)

Duplicator 安装时「数据库验证失败」

数据库用户名/密码填错,或者数据库用户没有对该数据库的操作权限。 解决: 在 宝塔面板 → MySQL 数据库管理里,确认数据库用户已被授予对应数据库的「所有权限」;重新核对密码输入无误。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注