← 回到 Blog
WordPress約 3 分鐘閱讀

WordPress 備份不是有外掛就好:一次可演練的還原檢查流程

分類WordPress網站經營維護流程
標籤#WordPress 備份#還原演練#網站維護#回滾流程
筆電上的網站分析與管理介面,象徵 WordPress 備份與還原演練流程

很多 WordPress 網站都有備份外掛、主機自動備份或雲端快照,但「有備份」和「能還原」是兩件事。真正出事時,常見卡點不是沒有檔案,而是不知道哪一份資料庫對應哪一份 uploads、備份壓縮檔無法解開、還原後網址序列化錯誤,或快取與 CDN 仍在送舊內容。

所以我會把備份視為一個需要演練的維護流程,而不是安裝完外掛就結束。下面是一份適合內容站、小型公司網站或接案維護專案使用的 WordPress 備份還原演練清單。

先定義備份要保護什麼

WordPress 備份至少要同時涵蓋三層:

  1. 資料庫:文章、頁面、設定、選單、使用者、外掛設定。
  2. 檔案系統:佈景主題、外掛、自訂程式、wp-config.php
  3. 媒體資產wp-content/uploads 裡的圖片、PDF、影片縮圖與其他附件。

如果只備份資料庫,文章內容可能回來了,但圖片全部失效;如果只備份檔案,文章和設定則不會回到正確狀態。對 UCAMC 這類從舊 WordPress 延伸出來的內容站,媒體資產和舊 URL 脈絡也很重要,因為它們會影響 SEO 與讀者體驗。

建立可以被讀懂的備份命名規則

備份檔案名稱不要只留下 backup.zip 或主機自動產生的一串亂碼。至少要能看出日期、網站、環境與內容類型:

2026-07-31-ucamc-production-db.sql.gz
2026-07-31-ucamc-production-wp-content.tar.gz
2026-07-31-ucamc-production-uploads.tar.gz
2026-07-31-ucamc-restore-notes.md

如果是外掛匯出的備份,也可以在備份後補一份小筆記,記錄外掛版本、WordPress 版本、PHP 版本與備份目的。這些資訊在幾個月後排查問題時會比想像中重要。

用暫存環境演練,不要直接覆蓋正式站

還原演練的目標不是冒險測試正式站,而是在暫存環境確認備份真的可用。流程可以是:

  1. 建立 staging 網域或本機測試環境。
  2. 匯入資料庫備份。
  3. 還原 wp-content、佈景主題、外掛與 uploads。
  4. 更新測試環境的 siteurlhome
  5. 執行搜尋取代,把正式網域換成 staging 網域。
  6. 登入後檢查首頁、文章頁、媒體庫、表單、搜尋與後台列表。

WP-CLI 的指令可以拆短執行,避免一次貼上太長而看不清楚:

wp db import backup.sql

wp search-replace \
  'https://www.example.com' \
  'https://staging.example.com' \
  --skip-columns=guid

wp cache flush

重點不是一定要用 WP-CLI,而是還原流程要能被重複執行、能被第二個人看懂,也能在正式事故發生前先找出破口。

還原後要檢查的不只首頁

首頁正常不代表網站已經恢復。至少抽查這些路徑與功能:

區域檢查項目
前台首頁Logo、導覽、最新文章、主要 CTA 是否正常
文章頁內文、圖片、分類、內部連結、留言或分享元件
媒體庫舊圖片是否可預覽、附件 URL 是否存在
後台文章列表查詢速度、篩選、編輯頁是否可開啟
表單 / 會員表單送出、通知信、登入與權限
SEOcanonical、robots、sitemap、redirect 是否合理

如果網站有快取外掛、Object Cache、Cloudflare 或主機層快取,還原後也要記錄清除順序。很多「還原失敗」其實是快取仍在送舊頁面,或 CDN 尚未刷新。

留下一份回滾紀錄

每次演練都應該留下簡短紀錄,讓未來維護時知道哪裡曾經卡住:

## WordPress Restore Drill

- Date: 2026-07-31
- Site: example.com
- Backup source: hosting snapshot + database export
- Restore target: staging.example.com
- WordPress version: 6.x
- PHP version: 8.x
- Database import: success / failed
- Uploads check: success / failed
- Search replace: success / failed
- Cache purge: success / failed
- Issues found:
  - ...
- Next action:
  - ...

這份紀錄比單純說「備份有開」更有價值。它能讓維護者判斷備份是否真的可用,也能幫助客戶理解為什麼網站維護不是只買一個外掛。

和日常更新流程接在一起

備份還原演練不需要每天做,但它應該和外掛更新、PHP 升級、搬家、改版、主機轉移接在一起。每次要做高風險變更前,先確認最近一次備份可用;變更後再補一次備份與紀錄。

如果你正在維護 WordPress 網站,可以把這篇搭配 外掛更新 Smoke TestObject Cache 後台文章列表排查 一起使用:先確保可回滾,再做更新與故障排查。

UCAMC 的維護觀點

對長期內容站來說,備份不是保險箱裡的靜態檔案,而是一套能在事故中被執行的操作流程。只要還原演練沒有跑過,就不能假設備份一定能救站。

UCAMC 未來整理 WordPress 舊文、媒體庫與內容搬家筆記時,也會把「是否能還原」納入維護品質的一部分。這不只保護網站,也保護多年累積的內容、圖片、搜尋流量與讀者信任。