WordPress 网站由什么组成,两个部分缺一不可
很多人备份了文件但忘了数据库,或者反过来——这两个必须同时备份,只有一个,恢复出来的网站是残缺的。
网站文件:WordPress 核心程序、主题、插件、所有上传的图片和附件(wp-content/uploads),以及 wp-config.php(包含数据库连接信息)。通常位于服务器的 public_html 或 htdocs 目录下。
数据库:所有的内容、数据、设置都存在数据库里——文章、页面、WooCommerce 商品和订单、用户账户、网站设置、菜单、评论、交易记录。文件完整但没有数据库,网站打开是空的。
推荐 UpdraftPlus:自动备份的实际配置
UpdraftPlus 是 WordPress 里使用最广泛的备份插件,免费版功能足够大多数网站使用。安装激活之后,在 Settings → UpdraftPlus Backups → Settings 完成以下配置:
备份频率:按网站类型选择合适的频率。静态内容为主的企业官网每周一次足够;有持续内容更新的博客每周 2–3 次;WooCommerce 商城每天至少一次,订单量大的商城建议每天多次(可以分文件和数据库单独设置频率,数据库比文件更新更频繁,可以更高频备份数据库)。
远程存储目标:选择一个或多个云存储,把备份自动推送过去。Google Drive、Dropbox、OneDrive、Amazon S3 都支持,选一个你已经在用的就行。免费版支持连接到这些云存储,Premium 版支持同时推送到多个目的地。配置好授权之后,点击 Test,确认上传测试文件成功,才算连通了。
保留备份数量:建议保留最近 7–14 次备份,在存储成本和恢复灵活性之间取一个平衡。太少了,如果问题是三天前引入的,你可能发现所有备份都已经是有问题的版本。
3-2-1 备份原则:不要只把备份存在服务器上
很多人做了备份,但备份文件和网站文件在同一台服务器上——服务器出了问题,备份跟着一起没了,等于没备份。
3-2-1 原则:至少保留 3 份数据,分存在 2 种不同介质上,其中至少 1 份存在异地(离线或不同服务商)。
实际操作:Cloudways 或你的主机服务商提供的自动快照可以算一份;UpdraftPlus 推送到 Google Drive 是第二份;如果是高风险的大型商城,还可以定期手动下载一份到本地电脑或 NAS,这是第三份。三份存在不同地方,任何单点故障都不会让你失去所有备份。
大多数人忽略的一步:验证备份是否真的有效
备份做了不等于备份有效。常见的虚假安全感包括:UpdraftPlus 显示备份成功,但恢复时发现文件不完整;备份文件传到了 Google Drive,但下载下来是损坏的压缩包;数据库备份只导出了一部分表。
建议每 1–2 个月做一次真实的恢复测试,不需要在生产环境做——在本地用 Local by Flywheel 或 XAMPP 搭一个 WordPress 环境,用你的备份文件完整恢复一次,确认网站能正常打开、内容完整、WooCommerce 商品和订单数据都在。这比每天看到备份成功的通知更踏实。
如何恢复网站:完整操作步骤
场景一:用 UpdraftPlus 恢复(推荐)
进入后台 Settings → UpdraftPlus Backups → Existing Backups,找到你要恢复的备份版本,选择恢复的内容(可以分别选择 Plugins、Themes、Uploads、Database,通常全选),点击 Restore。UpdraftPlus 会自动把文件和数据库恢复到对应位置。恢复完成后,进入 Settings → Permalinks,点击保存(不需要改任何东西,这一步只是让 WordPress 重新生成 .htaccess 的 rewrite 规则),能解决恢复后出现的部分 404 问题。
场景二:手动恢复
如果 WordPress 后台打不开,需要手动操作:通过 SFTP 或主机控制面板的文件管理器,把 Themes、Plugins、Uploads 目录上传到对应位置;通过 phpMyAdmin 导入之前导出的 .sql 数据库文件;检查 wp-config.php 里的数据库连接信息(数据库名、用户名、密码、主机)是否和当前服务器一致;同样记得保存一次固定链接。
更换主机:迁移流程
《WooCommerce 网站迁移到 Cloudways》那篇文章里已经详细写过了使用 Cloudways 官方迁移插件的完整流程,这里不重复,只说几个关键节点:
迁移完成后、DNS 切换之前,用新服务器的临时 URL 测试所有关键功能——首页、产品页、购物车、结账、支付、订单确认邮件,都要走一遍。这个窗口期是唯一可以安全发现问题的时间,DNS 切换之后真实用户进来了,发现问题处理起来更麻烦。
DNS 切换前 24 小时,把 TTL 调低(从 3600 秒降到 300 秒),让 DNS 记录的生效时间从 1 小时缩短到 5 分钟,方便在需要时快速切换回旧服务器。
如果用了 Cloudflare,切换 DNS 的时候先把 Cloudflare 代理改成 DNS-only(灰色云朵),让流量直接打到新服务器,等新服务器稳定运行 1–2 天之后再重新开启 Cloudflare 代理。
换域名:这个操作比换主机麻烦
换域名不只是改个地址,数据库里存了大量旧域名的 URL,图片链接、页面链接、设置里的各种 URL,都需要批量替换,否则图片会加载失败、页面链接会 404。
步骤一:更新 WordPress 地址。后台 Settings → General,把 WordPress Address 和 Site Address 都改成新域名(https 开头)。
步骤二:数据库里批量替换旧域名。安装 Better Search Replace 插件,在 Search 里填旧域名(如 https://old.com),Replace 里填新域名(https://new.com),选择所有数据库表,先点 Dry Run 预览会替换多少条记录,确认没问题之后取消 Dry Run 正式替换。这个步骤会更新所有内容里的图片链接、页面链接、设置值。
步骤三:配置 301 重定向。在旧域名的服务器上配置 301 重定向,把所有旧 URL 指向对应的新 URL(可以用通配符重定向 https://old.com/* → https://new.com/$1),告诉 Google 和用户旧域名已永久迁移。
步骤四:更新 Search Console 和 Analytics。在 Google Search Console 里添加新域名作为新的资产,用更改地址工具通知 Google 域名变化;在 Google Analytics 里更新数据流的域名。
步骤五:更新所有外部链接。你能控制的地方——社交媒体简介、邮件签名、广告账户的目标 URL、联盟营销平台里的推广链接——都要手动更新到新域名。
WooCommerce 商城迁移的额外检查项
除了标准的迁移步骤,WooCommerce 商城迁移后还要专门检查:
支付 Webhook 要确认——Stripe 和 PayPal 的 Webhook 端点 URL 是否指向新域名(如果域名没变,通常不用改,但要去各自后台确认 Webhook 状态正常)。订单确认邮件要测试一遍,确认 SMTP 配置仍然有效、邮件能正常发出。如果换了域名,SSL 证书要确认已经为新域名签发,所有资源都走 HTTPS,不存在 Mixed Content 警告。运费规则和税率设置在迁移过程中通常不会丢失,但要确认一遍显示正常。
备份频率速查
| 网站类型 | 文件备份 | 数据库备份 |
|---|---|---|
| 个人博客 | 每周一次 | 每周一次 |
| 企业官网 | 每周一次 | 每周 2–3 次 |
| WooCommerce 商城 | 每周一次 | 每天一次 |
| 高订单商城 | 每周一次 | 每天多次 |
文件变化频率通常低于数据库(内容更新都在数据库),可以设置不同的备份频率,减少存储占用。