凌峰创科服务平台

wordpress 迁移服务器

核心迁移流程概览

整个过程可以分为四个主要阶段:

wordpress 迁移服务器-图1
(图片来源网络,侵删)
  1. 准备工作:在新服务器上搭建好环境,备份旧站点的所有文件和数据库。
  2. 文件迁移:将旧站点的所有文件上传到新服务器。
  3. 数据库迁移:导出旧数据库,导入到新数据库,并修改关键信息。
  4. 最终配置与测试:修改网站地址,检查并修复问题,确保网站正常运行。

第一步:准备工作

在开始任何操作之前,充分的准备是成功的关键。

备份!备份!备份!

这是最重要的一步,没有之一,在操作旧站点之前,必须创建完整的备份。

  • 备份文件

    • 通过 FTP/SFTP 连接到你的旧服务器。
    • 下载整个 WordPress 网站目录,包括 wp-contentwp-config.php.htaccess 等所有文件。
    • 建议:将下载的文件重命名,my-website-files-YYYYMMDD.zip,并妥善保存。
  • 备份数据库

    wordpress 迁移服务器-图2
    (图片来源网络,侵删)
    • 登录你的旧服务器控制面板(如 cPanel, Plesk)。
    • 找到“数据库管理”工具(如 phpMyAdmin)。
    • 选择你的 WordPress 数据库。
    • 点击“导出”。
    • 选择“快速”或“自定义”模式,在“自定义”模式下,确保勾选了“添加 DROP TABLE/VIEW/PROCEDURE/FUNCTION”选项,这可以避免导入时出错。
    • 格式选择“SQL”,然后点击“执行”。
    • 浏览器会自动下载一个 .sql 文件,my-website-database-YYYYMMDD.sql

准备新服务器

  • 安装环境:确保你的新服务器已经安装并配置好了运行 WordPress 所需的环境:
    • Web 服务器:Apache 或 Nginx
    • 数据库:MySQL 或 MariaDB (版本建议 5.6+ 或 10.0+)
    • PHP:版本建议 7.4 或更高
    • SSL 证书:强烈建议为新域名安装 Let's Encrypt 免费证书,确保网站使用 HTTPS。
  • 创建数据库和用户
    • 登录新服务器的控制面板(如 cPanel)。
    • 创建一个新的数据库(new_wp_db)。
    • 创建一个新的数据库用户(new_wp_user)。
    • 为该用户授予对新数据库的“所有权限”。
    • 务必记下数据库名、用户名和密码,稍后需要用到。

准备域名解析

  • 更改 A 记录:在你的域名注册商(如 GoDaddy, Namecheap, 阿里云等)后台,将域名的 A 记录指向新服务器的 IP 地址。
    • 注意:DNS 更新可能需要几分钟到 48 小时生效,如果你希望立即测试,可以在本地电脑的 hosts 文件中添加一条临时记录,将域名指向新服务器的 IP。测试完毕后务必删除,否则别人就无法访问你的网站了。

第二步:迁移文件

这一步相对简单。

  1. 清空新目录:通过 FTP/SFTP 连接到新服务器,清空网站根目录(通常是 public_htmlwww)下的所有默认文件。
  2. 上传文件:将你在第一步中备份的旧网站文件(解压后的)上传到新服务器的网站根目录中。

第三步:迁移数据库并修改配置

这是整个迁移过程的核心,也是最容易出现问题的地方。

导入数据库

  1. 登录新服务器的 phpMyAdmin。
  2. 选择你在“准备新服务器”步骤中创建的新数据库(new_wp_db)。
  3. 点击“导入”选项卡。
  4. 点击“选择文件”,然后选择你备份的 .sql 文件。
  5. 点击“执行”,等待数据库导入完成。

修改 wp-config.php 文件

这是连接新数据库的“桥梁”。

  1. 通过 FTP/SFTP 编辑器,打开新服务器上 wp-config.php 文件。

    wordpress 迁移服务器-图3
    (图片来源网络,侵删)
  2. 修改以下三行信息,使其与你新服务器的数据库信息一致:

    /** WordPress 数据库的名称 */
    define('DB_NAME', 'new_wp_db'); // 改成你的新数据库名
    /** MySQL 数据库用户名 */
    define('DB_USER', 'new_wp_user'); // 改成你的新数据库用户名
    /** MySQL 数据库密码 */
    define('DB_PASSWORD', 'your_new_password'); // 改成你的新数据库密码
  3. 保存文件。

搜索并替换数据库中的旧域名

这是最关键的一步,因为数据库中存储了大量包含旧域名的链接(文章内容、页面、媒体、主题选项等)。

使用 phpMyAdmin 的“搜索替换”功能(推荐)

  1. 在 phpMyAdmin 中,选择你的新数据库 (new_wp_db)。
  2. 点击顶部的“搜索”选项卡。
  3. 在“查找”输入框中输入你的旧域名http://old-site.com)。
  4. 在“替换为”输入框中输入你的新域名https://new-site.com)。
  5. 重要:在“搜索于”部分,勾选所有数据表,或者,你可以只勾选主要的表,如 wp_options, wp_posts, wp_postmeta, wp_terms, wp_term_taxonomy 等。
  6. 点击“执行”,phpMyAdmin 会执行全局搜索和替换。

使用 WordPress 插件(更安全,适合新手)

如果你担心直接操作数据库会出错,可以使用插件。

  1. 在你的新网站后台(此时可能还无法访问,需要先通过修改 hosts 文件临时访问),安装并激活 "Better Search Replace" 插件。
  2. 进入“工具” -> “Better Search Replace”。
  3. 在“搜索”框中输入旧域名。
  4. 在“替换为”框中输入新域名。
  5. 确保“运行 dry run first”是勾选的,先进行一次“试运行”检查。
  6. 点击“Run Search/Replace”,确认无误后,取消勾选“试运行”,再次点击“执行”。

第四步:最终配置与测试

网站应该已经基本就绪,最后一步是检查和修复。

修改网站地址(Site URL)

即使你已经在数据库中替换了域名,WordPress 的“常规设置”中可能还存储着旧地址,这会导致重定向问题。

  1. 通过 phpMyAdmin,打开 wp_options 数据表。
  2. 找到 option_namesiteurlhome 的这两条记录。
  3. 将它们的 option_value 修改为你的新域名(确保包含 http://https://)。

检查并修复问题

  1. 访问网站:在浏览器中输入你的新域名,网站应该可以正常加载。
  2. 检查样式和功能
    • 页面是否显示正常? 有没有乱码或缺失的样式?
    • 图片是否显示? 检查文章中的图片是否能正常加载。
    • 链接是否正确? 点击菜单、文章链接、分类标签等是否跳转到正确的地址?
    • 插件是否正常? 登录后台,检查所有插件是否都处于激活状态,功能是否正常,可以尝试暂时禁用所有插件,然后逐个重新激活,排查冲突。
    • 主题是否正常? 检查网站的前端和后台界面是否完整。
  3. 检查 .htaccess 文件:如果网站使用了固定链接(Permalinks),.htaccess 文件会自动生成,如果出现 404 错误,可以尝试进入后台“设置”->“固定链接”,点击一下“保存更改”来重新生成 .htaccess 文件。

清理工作

  1. 删除临时 hosts 文件:如果你之前修改了本地 hosts 文件进行测试,现在请务必删除它,让 DNS 正常解析。
  2. 删除迁移插件:如果你使用了插件进行搜索替换,迁移成功后可以将其删除。
  3. 更新缓存:如果你使用了缓存插件(如 WP Super Cache, W3 Total Cache),请清空所有缓存。

常见问题与排查

  • 网站无法访问,显示连接错误
    • 检查域名 A 记录是否正确指向新 IP。
    • 检查新服务器的 Web 服务(Apache/Nginx)是否正常运行。
    • 检查防火墙是否阻止了 80/443 端口。
  • 网站显示,但样式丢失(白屏或无样式)
    • 检查 wp-config.php 中的数据库信息是否正确。
    • 检查主题文件夹是否完整上传。
    • 检查 wp-content 目录的权限是否正确(通常是 755)。
  • 页面显示 404 Not Found
    • 检查 .htaccess 文件是否存在,内容是否正确。
    • 进入后台“设置”->“固定链接”,点击“保存更改”来重写规则。
  • 图片无法显示,但链接是正确的
    • 这通常是数据库中的图片路径没有替换干净,再次使用 Better Search Replace 插件,在 wp_posts 表中搜索 old-site.com 并替换。

遵循以上步骤,你的 WordPress 网站迁移过程将会非常顺利,祝你成功!

分享:
扫描分享到社交APP
上一篇
下一篇