BWH Compass

WordPress 搬家:复制数据、试运行,再切 DNS

迁移需要同时转移文件、数据库和运行配置。新站通过测试后再修改域名解析,可以保留更清楚的回退路径。

BWH Compass 编辑整理更新于 约 4 分钟阅读

1. 先列出迁移范围和切换时间#

迁移至少包含网站文件、上传目录、数据库、配置、计划任务和证书管理。先记录旧站域名、根目录、PHP/数据库版本、插件和外部回调。目标服务器先搭好兼容环境,不能在迁移当天临时解决所有依赖。

如果域名不变,主要切换服务器;如果域名也变,还需处理内容链接、规范地址与旧域名跳转。降低 DNS TTL 应提前完成,已被缓存的记录不会因为刚修改 TTL 就立即消失。

2. 先做完整备份,在新站恢复#

备份教程导出文件和数据库,传输后核对校验值。新服务器创建独立站点与数据库用户,再导入数据,更新 wp-config.php 的连接信息。

在新服务器核对站点根目录
宝塔官方文档公开界面截图(2026-09-16 核对)。图中的域名、IP、旧版软件列表和日期仅作界面示例,安装版本按正文与应用要求选择。

测试环境先关闭真实邮件、支付回调和自动发布任务,避免新旧两台同时执行。上传目录的所有者和权限也要检查,不能只看到首页就认为恢复成功。

3. 域名不变时先绕过 DNS 测源站#

可在自己的电脑 hosts 中临时把域名指向新 IP,或使用 curl 的 resolve 参数验证 HTTPS。证书需包含该域名,并已正确部署。

bash
curl --resolve example.com:443:203.0.113.10 -I https://example.com/

这样保留正确 Host 和 TLS SNI。直接打开 IP 可能匹配到默认站点,不能替代域名测试。完成后撤销本机临时 hosts,避免以后一直访问旧测试地址。

4. 域名变化用支持序列化的工具替换#

WordPress 配置和插件数据可能使用 PHP 序列化格式,直接对 SQL 文件做全文字符串替换可能破坏长度信息。先备份数据库,再使用 WP-CLI search-replace 的 dry-run 查看影响。

bash
wp search-replace 'https://old.example.com' 'https://new.example.com' --all-tables-with-prefix --skip-columns=guid --dry-run

确认表范围和结果合理后,去掉 --dry-run 执行。命令应在正确站点目录、以拥有该站文件的用户运行;多个站点共用数据库时尤其要核对前缀,不能误改其他站。

同时检查 home、siteurl、媒体链接、菜单、自定义 CSS 和外部回调。旧文章到新文章建立一对一永久跳转,不把全部请求都丢到新首页。

5. 切换前做最后一次增量同步#

在约定窗口让旧站短暂停写或进入维护状态,完成最后一份数据库与上传文件同步,再切 DNS。保持旧站可回退,但避免新旧两边同时接收订单或评论导致数据分叉。

后台检查文章、媒体和设置是否完整
WordPress 官方 Playground 演示环境实拍(2026-09-16,界面显示版本 7.1)。用于对照后台操作,不是服务商控制面板或正式业务数据。

切换后验证首页、文章、分类、搜索、后台登录、上传、邮件和计划任务。分别检查 IPv4/IPv6,确认 CDN 回源地址也已更新。

6. 保留回退点并观察抓取#

旧服务器暂时保留备份和只读副本,观察错误日志与访问量。回退前先保存新服务器已产生的数据,不能直接切回造成新评论或订单丢失。

更新 sitemap、站内链接和搜索工具中的站点配置,检查 canonical、robots 和跳转链。域名迁移的搜索表现需要时间重新处理,技术配置正确不等于保证排名不变。更多见固定链接SEO 检查

完成后检查

保留旧站备份及恢复步骤。迁移后检查 canonical、站点地图和搜索可见性。

官方资料与相关入口