如何将WordPress网站迁移到另一个主机(完整分步指南)
将WordPress网站迁移到新的托管提供商可能会让人感到不知所措,但采用正确的方法,这是一个直接的过程,可以保留每一篇文章、页面、插件和数据库记录。无论您是升级到更快的服务器、为了获得更好的定价而更换提供商,还是迁移到更强大的环境,本指南将引导您完成每一步——从备份文件到在新主机上测试您的实时网站。
为什么迁移您的WordPress网站?
有许多合理的理由将WordPress安装迁移到新的托管环境:
- 性能升级 — 迁移到NVMe驱动的VPS Hosting与共享环境相比,可以显著降低页面加载时间。
- 可扩展性 — 您当前的主机无法跟上不断增长的流量。
- 成本效益 — 以更低的月度价格获得更好的资源。
- 安全性改进 — 访问DDoS防护、防火墙和隔离环境。
- 完全服务器控制 — Root访问权限让您可以完全按需配置PHP、NGINX、Apache和缓存层。
无论您的原因是什么,遵循结构化的迁移流程可确保零数据丢失和最少的停机时间。
开始前:迁移前检查清单
在没有准备的情况下仓促进行迁移是导致数据丢失和延长停机时间的最常见原因。在触及任何文件之前,请完成以下步骤:
1. 选择您的新托管提供商
选择与您网站当前和未来需求相匹配的托管计划。考虑以下因素:
- 存储类型 — NVMe SSD vs. 传统 HDD
- RAM 和 CPU 分配
- PHP 版本支持
- 控制面板可用性(cPanel、Plesk、DirectAdmin)
- 支持质量和响应时间
如果您正在运行一个不断增长的 WordPress 网站,带有 cPanel 的 VPS 为您提供了专用环境的灵活性和图形控制面板的熟悉性——非常适合在没有命令行专业知识的情况下管理数据库、文件和电子邮件账户。
2. 创建 WordPress 网站的完整备份
永远不要在没有经过验证的完整备份的情况下开始迁移。完整的 WordPress 备份包括两个组件:
- 所有 WordPress 文件(主题、插件、上传、核心文件和配置)
- MySQL 数据库(所有文章、页面、设置、用户和元数据)
在继续之前,必须备份两者并将其安全存储。
第 1 步:备份您的 WordPress 文件
选项 A:使用 FTP 客户端 (FileZilla)
- 下载并安装 FileZilla(或任何您选择的 FTP/SFTP 客户端)。
- 使用您的 FTP 凭据连接到您当前的托管服务器:
- 主机:您的服务器 IP 或域名
- 用户名:您的 FTP 用户名
- 密码:您的 FTP 密码
- 端口:
21(FTP)或22(SFTP — 建议用于安全性)
- 导航到您的 WordPress 根目录 — 通常为
public_html/或www/。 - 选择所有文件和文件夹,包括隐藏文件(例如
.htaccess)。在 FileZilla 中,在 Server → Force showing hidden files 下启用隐藏文件可见性。 - 将所有内容下载到您本地计算机上的专用文件夹。
选项 B:使用您的托管控制面板文件管理器
- 登录您当前的托管控制面板(cPanel、Plesk 等)。
- 打开文件管理器。
- 导航到
public_html/(或您的 WordPress 根目录)。 - 选择所有文件,将它们压缩为
.zip存档。 - 将存档下载到您的本地计算机。
> 专业提示:在继续之前,请验证下载的存档是否完整且未损坏。不完整的备份与没有备份一样危险。
第 2 步:导出您的 WordPress 数据库
您的 WordPress 数据库包含使您的网站独特的所有内容——所有内容、用户账户、设置和插件数据。正确导出它至关重要。
第 2.1 步:在您当前的主机上访问 phpMyAdmin
- 登录您的当前托管控制面板。
- 导航到数据库部分并打开 phpMyAdmin。
- 在左侧边栏中,点击您的 WordPress 数据库(数据库名称在您的
wp-config.php文件中的DB_NAME下列出)。
第 2.2 步:导出数据库
- 点击 phpMyAdmin 界面顶部的导出选项卡。
- 选择快速导出方法以进行标准的完整导出。
- 确保格式设置为 SQL。
- 点击执行— phpMyAdmin 将下载一个
.sql文件到您的计算机。
> 重要提示:妥善保管这个 .sql 文件。它是您的 WordPress 数据库的完整快照,没有您的原始服务器就无法替代。
第 3 步:将您的 WordPress 文件上传到新主机
在本地备份了文件和数据库后,现在是时候设置您的新托管环境了。
第 3.1 步:连接到您的新托管服务器
使用您的新托管提供商提供的凭据使用 FTP/SFTP 客户端。如果您选择了 VPS 托管 计划,您也可以通过 SSH 连接以使用 scp 或 rsync 进行更快的文件传输。
使用 SSH 上的 rsync(推荐用于 VPS 用户):
rsync -avz --progress /local/path/to/wordpress/ user@new-server-ip:/var/www/html/对于大型网站,此方法比 FTP 快得多,并保留文件权限。
第 3.2 步:上传所有 WordPress 文件
- 导航到新服务器上的根网络目录(通常为
public_html/或/var/www/html/)。 - 从本地 WordPress 备份上传所有文件和文件夹,包括隐藏文件,如
.htaccess。 - 等待传输完全完成后再继续。
第 4 步:在新主机上创建新数据库
第 4.1 步:创建数据库和用户
- 登录到您的新主机控制面板。
- 导航到 MySQL 数据库(或等效选项)。
- 创建新数据库 — 选择一个描述性名称(例如,
wp_newsite)。 - 创建新数据库用户并设置强密码。
- 将用户分配给数据库,赋予所有权限。
- 记下数据库名称、用户名和密码 — 您很快就会需要这些。
第 4.2 步:通过 phpMyAdmin 导入数据库
- 在新主机控制面板上打开 phpMyAdmin。
- 从左侧边栏选择新创建的数据库。
- 点击导入选项卡。
- 点击选择文件并选择您之前导出的
.sql文件。 - 保留所有设置为默认值,然后点击执行。
- 等待导入完成 — 您应该会看到成功确认消息。
> 注意:对于大型数据库(超过 50MB),phpMyAdmin 可能会超时。在这种情况下,请在 VPS 上使用命令行:
> “`bash
> mysql -u new_database_user -p new_database_name < /path/to/backup.sql
> “`
第5步:更新 wp-config.php
wp-config.php 文件是您的 WordPress 文件和数据库之间的桥梁。迁移到新服务器后,您必须使用新的数据库凭据更新它。
定位和编辑 wp-config.php
- 在新服务器的根 WordPress 目录中,找到名为
wp-config.php的文件。 - 在文本编辑器中打开它(Notepad++、VS Code 或通过 SSH 使用
nano)。 - 使用您的新数据库详细信息更新以下行:
define( 'DB_NAME', 'new_database_name' );
define( 'DB_USER', 'new_database_user' );
define( 'DB_PASSWORD', 'new_database_password' );
define( 'DB_HOST', 'localhost' ); // Usually 'localhost' — confirm with your host- 保存文件,如果您在本地编辑,请将其上传回服务器。
> 安全提示:当您打开 wp-config.php 时,验证您的 AUTH_KEY、SECURE_AUTH_KEY 和其他密钥是否存在。您可以使用 WordPress Secret Key Generator 重新生成它们。
第 6 步:更新域名 DNS 设置
如果您保留相同的域名但将其指向新服务器,您需要更新 DNS 记录。
第 6.1 步:登录您的域名注册商
访问您的域名注册的控制面板。如果您还没有注册域名或需要转移域名,通过您的托管提供商进行域名注册可以简化管理,将所有内容保存在一个地方。
第 6.2 步:更新名称服务器或 A 记录
您有两个选项:
选项 A — 更新名称服务器(如果完全切换托管商,推荐):
- 将现有名称服务器替换为您的新托管提供商提供的名称服务器。
- 示例:
ns1.newhost.com和ns2.newhost.com
选项 B — 更新 A 记录(如果保留您当前的 DNS 提供商):
- 将您的域名(和
www子域)的A记录更新为指向您的新服务器的 IP 地址。
第 6.3 步:等待 DNS 传播
DNS 更改可能需要几分钟到 48 小时才能在全球完全传播。在此期间,某些访问者可能仍会看到旧网站。要在 DNS 传播之前测试您的新网站,请使用您系统的 hosts 文件将域名本地指向新 IP。
在 Linux/macOS 上:
sudo nano /etc/hosts
# Add: NEW_SERVER_IP yourdomain.com www.yourdomain.com在 Windows 上:
以管理员身份编辑 C:WindowsSystem32driversetchosts。
第7步:安装和配置SSL证书
一旦您的域名指向新服务器,请使用HTTPS保护您的网站。有效的SSL证书对于用户信任、数据安全和Google搜索排名至关重要。
如果您的新托管计划不包括免费SSL证书,您可以通过SSL证书获取 — 提供域名验证、组织验证和扩展验证等级,适合任何网站类型。
对于VPS用户,您也可以使用Certbot安装免费的Let’s Encrypt证书:
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com第8步:测试您迁移的WordPress网站
在DNS传播和SSL配置完成后,在宣布迁移完成之前,彻底测试您的网站。
必要的测试清单
| 测试 | 检查内容 |
|---|---|
| 首页加载 | 正确的内容、图像和布局 |
| 内部链接 | 所有导航链接正确解析 |
| 联系表单 | 表单提交有效且电子邮件已送达 |
| 媒体文件 | 图像和视频显示无损坏链接 |
| 管理员登录 | WordPress仪表板可在/wp-admin/访问 |
| 插件 | 所有活跃插件正常运行 |
| SSL/HTTPS | 显示挂锁图标;无混合内容警告 |
| 页面速度 | 运行GTmetrix或Google PageSpeed Insights测试 |
修复永久链接
迁移后,WordPress永久链接结构有时会中断。要刷新它们:
- 登录您的WordPress管理仪表板。
- 导航到设置→永久链接。
- 点击保存更改(不更改任何内容)——这会重新生成
.htaccess重写规则。
第9步:排查常见迁移问题
即使经过仔细准备,问题仍可能出现。以下是最常见的问题及其解决方案:
错误:”Error Establishing a Database Connection”
原因: wp-config.php 中的数据库凭证不正确。
解决方案:
- 仔细检查
wp-config.php中的DB_NAME、DB_USER、DB_PASSWORD和DB_HOST。 - 确认数据库用户已被授予数据库的完全权限。
- 在某些主机上,
DB_HOST可能不是localhost— 请在您的主机控制面板中检查正确的主机名。
错误:图像损坏或媒体文件丢失
原因: 媒体文件未上传,或 WordPress 引用了旧域名的 URL。
解决方案:
- 验证
wp-content/uploads/中的所有文件已被传输。 - 使用 Better Search Replace 插件更新数据库中的旧 URL:
- 替换:
http://oldsite.com - 替换为:
https://newsite.com
错误:白屏死机 (WSOD)
原因: PHP 错误、不兼容的插件或内存限制。
解决方案:
- 在
wp-config.php中启用 WordPress 调试模式:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );- 检查
/wp-content/debug.log以获取错误详情。 - 通过 FTP 重命名
plugins文件夹来临时停用所有插件。
错误:除主页外所有页面都显示 404
原因: 迁移后未重新生成永久链接结构。
解决方案: 在 WordPress 管理员中转到 设置 → 永久链接 并点击 保存更改。
错误:重定向循环
原因: SSL/HTTPS 设置冲突,或数据库中的 siteurl/home 值指向错误的 URL。
解决方案:
- 通过 phpMyAdmin 更新 WordPress 数据库中的
siteurl和home:
UPDATE wp_options SET option_value = 'https://yournewdomain.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://yournewdomain.com' WHERE option_name = 'home';为您的WordPress网站选择合适的托管
迁移的成功在很大程度上取决于您新托管环境的质量。以下是将您网站的需求与合适计划相匹配的快速指南:
对于大多数正在增长的WordPress网站,VPS是最佳选择——提供专用资源、完整的root访问权限,以及在不需要独立服务器成本的情况下微调PHP、NGINX和缓存配置的能力。
最终迁移检查清单
在您认为迁移完成之前,请完成此最终检查清单:
- [ ] 所有WordPress文件已上传到新服务器
- [ ] 数据库已从旧主机导出并导入到新主机
- [ ]
wp-config.php已使用新数据库凭据更新 - [ ] DNS名称服务器或A记录已更新
- [ ] SSL证书已安装且HTTPS正常工作
- [ ] 所有页面、文章和媒体文件已验证
- [ ] 联系表单和电子邮件功能已测试
- [ ] WordPress管理员中的永久链接已刷新
- [ ] 旧网站保持活跃直到DNS完全传播
- [ ] 迁移后已备份新网站
结论
当您遵循结构化的分步方法时,将WordPress网站迁移到新的托管提供商是一个可管理的过程。成功迁移的关键支柱是:开始前进行完整备份、谨慎处理数据库、准确的wp-config.php配置和彻底的迁移后测试。
通过迁移到高性能托管环境——无论是托管VPS、配备cPanel的服务器还是专用机器——您不仅仅是在更换主机。您正在投资更快的加载时间、更好的安全性和更可扩展的基础,以支持您的WordPress网站的未来增长。
花时间完成每一步,在每个阶段验证您的工作,您的网站将在其新家上线,对访问者的干扰最小。
