
将WordPress网站迁移到新域名是开发者的常见任务,但这通常会带来链接损坏和内容丢失的风险。确保无缝迁移,使每个URL、图片和内部引用都正确指向您的新域名,这对于用户体验和SEO至关重要。
在本文中,我们将概述将WordPress站点迁移到新域名而不损坏链接所需的步骤。我们将主要使用WP Migrate Lite进行核心迁移过程,展示精确的数据库和文件处理。我们还将探讨WP Migrate如何进一步简化和加速这些域名转移工作流程。
了解域名迁移挑战:为什么链接会损坏
将WordPress网站迁移到新域名通常会导致链接损坏。这是因为WordPress将其数据库中的绝对URL和文件路径直接存储。它不仅仅依赖于相对路径。
WordPress站点的主要地址存储在wp_options表中的siteurl和home选项中。然而,除了这些明显的位置外,您的旧域名URL还嵌入在无数其他位置:
- 在
wp_posts表中帖子和页面的内容内。 - 在插件或主题管理的自定义字段中(通常在
wp_postmeta中)。 - 在小部件设置、导航菜单和各种插件配置中,这些通常作为复杂的序列化数据存储在
wp_options表或自定义表中。 - 媒体文件的直接链接,其中也包含域名。
这种深度嵌入的挑战在于,特别是对于序列化数据,在原始SQL文件上进行简单的文本搜索和替换可能会损坏这些复杂的数据结构。如果在简单替换过程中字符串长度发生变化,可能会破坏序列化,使菜单、小部件和许多插件设置无法正常工作。解决方案是使用一种工具,可以智能地查找和替换这些URL和路径,同时保持数据完整性。
迁移前检查清单:为顺利过渡做准备
成功的WordPress域名迁移在很大程度上取决于充分的准备。在开始传输过程之前,花时间完成几个关键步骤可以避免重大麻烦、意外停机和数据丢失。此检查清单可确保您的源站点准备好导出,您的目标环境准备好接收数据。
完整备份:您的基本安全网
在对您的实时站点进行任何更改之前,最关键的步骤是创建整个WordPress安装的完整且经过验证的备份。这包括您的数据库和所有网站文件(主题、插件、媒体上传和WordPress核心文件)。此备份作为您的绝对安全网。如果迁移过程中出现任何问题,您可以恢复到站点的原始状态,而不会造成永久性数据丢失。将此备份安全地存储在异地位置,而不是同一服务器上。
更新所有内容
过时的WordPress核心文件、主题或插件可能在迁移过程中引入兼容性问题或意外行为。在开始导出之前,确保源WordPress站点的所有组件都更新到其最新的稳定版本。这可以最大程度地减少在站点传输到新环境时遇到与旧代码相关错误的机会。
清理您的站点
为了减小迁移包的大小并简化传输过程,执行站点清理会很有帮助。这涉及:
- 删除未使用的主题和插件:移除任何不再活跃或不需要的主题或插件。
- 清理旧媒体文件:考虑从媒体库中删除任何不再与您的网站相关的未使用图片或媒体文件。
- 清理数据库:使用数据库优化插件或手动清除旧的文章修订版、垃圾评论和临时选项。更小、更干净的数据库将导出和导入得更快。
准备您的新域名和托管环境
在从旧网站开始任何导出之前,请确保您的新目标已准备就绪。
确保新域名已注册并可访问,并准备好您的新托管账户。
通常建议从全新的默认WordPress安装开始。这为您提供了一个干净的空白页面,可以将旧网站的数据和文件导入其中。您将用旧网站的数据替换其数据库和wp-content文件夹。
步骤指南:使用WP Migrate Lite迁移您的网站
本节介绍从旧域名导出网站数据库和文件并成功导入到新域名的步骤,确保所有内部链接都能正确更新。
WP Migrate Lite提供全站导出选项,可同时捆绑数据库和文件,但在本案例中,我们将分别导出数据库和文件。对于域名迁移,这种方法强调数据库内的关键URL替换,对每个组件提供更大的控制以精确执行,简化了故障排除(如果出现问题),并且与单个大型归档相比,可以使更大的网站迁移更高效。
在旧域名的WordPress网站上安装WP Migrate Lite
首先,确保WP Migrate Lite插件已安装并在旧域名上运行的WordPress安装中激活。您可以在WordPress管理侧边栏中导航到工具 -> WP Migrate找到它。
导出数据库并进行域名替换
这是域名迁移中最关键的部分,因为它直接在数据库中处理将所有旧URL更新为新URL。WP Migrate Lite的智能查找和替换功能在此必不可少。
从旧域名的WordPress管理员界面,进入WP Migrate Lite的主界面,选择迁移选项卡,然后点击导出

"数据库"复选框应默认勾选。接下来,点击表格,确保单选按钮"导出所有带前缀'wp_'的表格"已选中。这确保数据库中存储的每一条数据都被包含在内,包括站点选项、文章内容和插件设置。

下一步是配置"标准查找和替换"。"查找"字段应自动预填充您当前(即旧)域名的URL。在"替换"字段中,仔细输入新域名的完整URL,确保包含正确的协议(http或https)。
WP Migrate Lite将在此过程中智能处理数据库中的序列化数据,这对于防止简单文本搜索和替换经常导致的数据损坏至关重要。
您也可以为新域名设置不同的路径。在大多数情况下这不是必需的,因为WP Migrate Lite会自动为您设置新路径。
配置完成后,点击导出按钮。WP Migrate Lite将处理您的数据库,执行替换操作,并生成包含您数据库的SQL文件。

导出您的 WordPress 文件
导出数据库后,下一步是从旧的 WordPress 安装中导出所有必要的文件。这包括您的主题、插件、媒体上传文件,以及可能的其他自定义文件或 WordPress 核心文件本身。
点击 Migrate(迁移) 选项卡,然后再次选择 Export(导出)。“Database(数据库)”部分默认已勾选。由于您已经在上一步中导出并处理了数据库,这里的首要操作是取消勾选 Database(数据库) 复选框。
接下来,我们将配置剩余部分的文件导出。
媒体上传
此部分处理 wp-content/uploads 文件夹中的文件。勾选 Media Uploads(媒体上传) 复选框。随后会出现一个下拉菜单,提供三个选项来导出这些文件。对于完整的域名迁移,如果您希望所有媒体都在新网站上,您应该选择 “Export all media uploads(导出所有媒体上传)”。此选项确保上传文件夹中的所有文件都被复制。“Export new and updated media uploads(导出新的和已更新的媒体上传)”和“Export media uploads by date(按日期导出媒体上传)”这两个选项通常更适合部分内容同步,而不是完整的域名转移。
主题
此部分允许您导出位于 wp-content/themes 中的主题文件。勾选 Themes(主题) 复选框。伴随的下拉菜单提供了多个选项。对于完整的域名迁移,请选择 Export all themes(导出所有主题) 以确保旧网站上的每个主题都被包含。如果您有特定需求,还可以选择“Export only active themes(仅导出活动主题)”或“Export only selected themes(仅导出选定主题)”等其他选项。
插件
与主题类似,此部分管理来自 wp-content/plugins 的插件文件导出。勾选 Plugins(插件) 复选框。从下拉菜单中选择 Export all plugins(导出所有插件),将旧网站上的所有插件包含在迁移包中。此部分提供与“主题”相同的选项,但针对的是插件。
其他文件
“Other Files(其他文件)”部分用于选择 wp-content 目录中直接包含的任何额外文件或文件夹,这些内容不在“媒体上传”、“主题”或“插件”部分覆盖的范围内。勾选 Other Files(其他文件) 复选框。随后会出现一个复选清单,允许您手动选择要包含的各个文件或文件夹。这些可能是自定义配置、标准目录外的上传文件或其他特定资产。默认情况下均未选中,因此您必须仔细选择任何您需要的文件。
“媒体上传”、“主题”、“插件”和“其他文件”各个部分还提供了一个高级选项,可使用 gitignore 模式来排除相对于其各自目录的特定文件。这对于高度自定义的导出非常有用,因为某些文件(如缓存文件或开发特定资产)不应被迁移。
WordPress 核心文件
“WordPress Core Files(WordPress 核心文件)”部分涉及 WordPress 核心安装本身。勾选 “WordPress Core Files(WordPress 核心文件)” 复选框。包含 WordPress 核心文件可确保导出的存档包含您网站上安装的 WordPress 精确版本,这在精确复制新环境中的网站时特别有用。此选项包含 wp-admin 和 wp-includes 目录,以及各种根目录 WordPress 文件,如 index.php、license.txt、readme.html 和关键配置文件如 wp-config.php 和 wp-config-sample.php。
配置完所有所需的文件部分后,点击 “Export(导出)” 按钮。WP Migrate Lite 会将您选择的文件打包成一个 ZIP 存档。
。
准备新域名的 WordPress 安装
在导入旧网站内容之前,您需要一个全新的WordPress安装作为目标站点。确保您的新域名已指向新托管环境的服务器,然后在新域名上设置一个全新的默认WordPress安装。
一旦新的WordPress网站可以通过新域名访问,请登录其管理后台,删除任何默认内容(例如“你好,世界!”文章、示例页面、示例评论),为导入的数据提供更干净的起点。
手动将数据库导入您的新域名
现在,您将用从旧网站导出和修改的数据库替换新域名上全新WordPress安装的数据库。
访问新域名的数据库,通常通过托管控制面板中的phpMyAdmin工具,如果您有SSH访问权限,也可以使用命令行界面(CLI)。
如果使用phpMyAdmin,请从左侧边栏中选择与新WordPress安装关联的数据库。点击结构选项卡。滚动到列表底部 并点击全选复选框。从“选中项:”下拉菜单中,选择“删除”。系统会提示您确认是否确实要执行DROP TABLE查询。确认操作。此步骤至关重要,因为它会清除默认的WordPress表格,为导入的数据腾出空间。

接下来,转到导入选项卡。点击选择文件并选择您使用WP Migrate Lite导出的SQL文件。确保字符集和其他选项正确(通常默认设置即可)。点击导入开始导入。
如果使用WP-CLI,请SSH到您的新托管环境并导航到新WordPress安装的根目录。确保您的wp-config.php文件具有新数据库的正确数据库凭据。然后,运行命令:wp db import /path/to/your/downloaded/database.sql(请记住用您的SQL文件的实际路径替换/path/to/your/downloaded/database.sql,您需要先通过SFTP上传该文件)。此命令将自动删除现有表格并导入您的新数据。
手动将文件传输到您的新域名
数据库导入完成后,WP Migrate Lite的最后一步是将您的主题、插件和媒体文件传输到新域名。
解压从WP Migrate Lite下载的ZIP文件内容。这将给您一个"wp-content"文件夹,可能还有其他根WordPress文件。使用FTP或SFTP客户端,连接到您的新托管环境并导航到新WordPress安装的根目录。
将解压的ZIP文件中的wp-content文件夹上传到新WordPress安装的根目录。出现提示时,指示您的FTP/SFTP客户端覆盖wp-content内的任何现有文件和文件夹。这将用您旧网站的主题、插件和空的上传文件夹替换默认的内容。
如果您的旧网站有自定义的.htaccess规则、robots.txt文件,或对wp-config.php的特殊修改(数据库凭据除外),您可能需要将这些文件单独从解压的ZIP根目录传输到新网站的根目录。在传输或合并wp-config.php时要格外小心,因为错误的详细信息会导致网站无法正常运行。通常,更安全的做法是手动将特定的自定义项重新添加到新的wp-config.php中,而不是替换整个文件。
迁移后的检查和最后步骤
即使执行谨慎,为了确保您的网站在新域名上完全正常运行,一些最后的检查仍然是必不可少的。
登录新域名的 WordPress 管理后台,进入 设置 > 固定链接。无需更改固定链接结构本身,只需滚动到页面底部,连续点击两次保存更改按钮。此操作会刷新 WordPress 的重写规则,确保您所有的文章和页面都可以通过新 URL 访问。
请确保清除所有缓存,如果您之前的网站使用了缓存插件,或新主机使用了服务器端缓存。这可以防止网站提供过时信息或陷入重定向循环。
最后,彻底测试您的新网站。系统地浏览网站,点击各类文章、页面和自定义文章类型,测试所有导航菜单,检查所有图片和媒体文件,提交表单,并验证插件功能。
一旦您确认网站在新域名上运行完全正常,请更新域名的 DNS 记录,指向新主机环境的服务器。这是使新域名成为您网站主要上线地址的最后一步。DNS 传播 可能需要 24-48 小时。
如果您之前的域名已被搜索引擎收录,并且您希望保留 SEO 价值,强烈建议设置 301 永久重定向,将旧域名的每个 URL 重定向到新域名的对应 URL。这会告知搜索引擎您的内容已永久迁移。
使用 WP Migrate 简化域名迁移
虽然 WP Migrate Lite 提供了成功手动域名迁移所需的工具,但涉及文件传输、数据库导入和手动配置的多步骤流程可能耗时且容易出现人为错误,特别是对于大型网站或频繁更换域名的情况。WP Migrate 直接解决了这些挑战,提供高度简化和自动化的工作流程,显著减少了工作量和风险。
WP Migrate 的一个优势是其直接的推送和拉取功能,可同时处理数据库和文件。此功能完全无需手动下载、上传和导入步骤。相反,您可以在源网站和目标网站之间建立安全的直接连接。您可以从源网站将整个网站直接"推送"到新域名,包括其数据库、主题、插件和媒体文件。WP Migrate 处理所有底层复杂性,包括智能执行必要的 URL 和路径替换,以及正确处理序列化数据,所有操作在一个协调的流程中完成。此功能显著加速了迁移过程,并几乎消除了与手动传输相关的错误风险。
WP Migrate 的 WP-CLI 集成 提供了强大的自动化途径。这意味着您可以直接从命令行启动和控制域名迁移。对于使用版本控制和持续集成/持续交付 (CI/CD) 流水线的人来说,这允许将域名迁移步骤编写成脚本并集成到自动化部署流程中,从而增强整个开发生态系统的效率和可靠性。
总的来说,这些高级功能将潜在的繁琐且容易出错的域名迁移转变为快速、可靠且通常可自动化的任务。通过消除手动步骤并利用智能的网站间直接通信,WP Migrate 显著减少了将 WordPress 网站迁移到新域名所需的时间和固有风险。
将WordPress网站迁移到新域名不一定会遇到链接损坏或内容丢失的问题。确保无缝迁移,让每个URL、图片和内部引用都正确指向您的新域名,这需要使用正确的流程和工具。系统化的方法可以让您自信地管理WordPress网站的迁移,并确保它在新的环境中蓬勃发展。
您是否使用WP Migrate或其他工具将网站迁移到新域名?迁移过程如何?请在评论中告诉我们!




