# WordPress 搬家：复制数据、试运行，再切 DNS

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

更新日期：2026-09-16

规范地址：https://stock.iftalking.com/guides/wordpress-migration/

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

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

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

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

按[备份教程](https://stock.iftalking.com/guides/backup-restore/)导出文件和数据库，传输后核对校验值。新服务器创建独立站点与数据库用户，再导入数据，更新 `wp-config.php` 的连接信息。

![在新服务器核对站点根目录](https://stock.iftalking.com/tutorial-media/bt-site-files.png)

*图示说明：宝塔官方文档公开界面截图（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。保持旧站可回退，但避免新旧两边同时接收订单或评论导致数据分叉。

![后台检查文章、媒体和设置是否完整](https://stock.iftalking.com/tutorial-media/wordpress-dashboard.png)

*图示说明：WordPress 官方 Playground 演示环境实拍（2026-09-16，界面显示版本 7.1）。用于对照后台操作，不是服务商控制面板或正式业务数据。*

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

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

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

更新 sitemap、站内链接和搜索工具中的站点配置，检查 canonical、robots 和跳转链。域名迁移的搜索表现需要时间重新处理，技术配置正确不等于保证排名不变。更多见[固定链接](https://stock.iftalking.com/guides/wordpress-permalinks/)与[SEO 检查](https://stock.iftalking.com/guides/wordpress-security-seo/)。


## 完成后检查

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

## 参考资料

- [WordPress 开发与运维手册](https://developer.wordpress.org/advanced-administration/upgrade/migrating/)
- [宝塔官方文档](https://docs.bt.cn/getting-started/create-web)
- [WordPress 开发与运维手册](https://developer.wordpress.org/playground/)
