跳到主要內容
WP 解題所

文章

wp-config.php 安全修改指南:位置、常數、備份與權限

wp-config.php 設定主題資訊圖

先做這件事

wp-config.php 設定:不要在沒有備份時連續試錯

wp-config.php 包含資料庫、金鑰、除錯與環境常數。修改前應下載備份、限制權限,並在「停止編輯」註解之前加入支援的設定。

本文聚焦「只改必要常數、保留註解與格式,不把憑證貼到文章或公開倉庫。」。對應的使用情境是:需要調整 WordPress 設定,想知道正確位置與安全方式。。排查時請保存每一步的時間、畫面與日誌差異,才能把同時發生但無關的變更排除。

排查原則:先保存錯誤與現況,再從低風險、可回復的檢查開始;一次只改一個變因。

問題症狀

  • 加入常數後網站語法錯誤
  • WP_DEBUG 開啟後錯誤公開顯示
  • 設定檔被提交到公開 Git

用成功與失敗各一個樣本比較 URL、角色、裝置、HTTP 標頭與錯誤日誌;差異通常比猜測更快指向正確層級。

可能原因

  1. 01引號或分號錯誤。需要用錯誤日誌、Network 或隔離測試確認,不應只因時間接近就下結論。
  2. 02重複定義常數。需要用錯誤日誌、Network 或隔離測試確認,不應只因時間接近就下結論。
  3. 03在錯誤位置修改或暴露敏感資訊。需要用錯誤日誌、Network 或隔離測試確認,不應只因時間接近就下結論。
wp-config.php 設定重點與步驟說明圖
wp-config.php 設定的操作重點、檢查順序與注意事項示意。圖片由本站依本文內容原創製作。

修改前備份

下載原 wp-config.php 到加密位置並計算雜湊;不把內容放入一般 QA 報告或公共版本控制。

計算或記錄備份檔案大小與雜湊,可在下載、傳輸與還原前確認檔案沒有被截斷或換成其他版本。

由低風險到高風險的排查順序

  1. 1. 確認真正使用的 WordPress 根目錄
    這一步保持唯讀或可快速回復,先蒐集證據再改設定。
  2. 2. 以安全編輯器建立最小差異
    這一步保持唯讀或可快速回復,先蒐集證據再改設定。
  3. 3. 檢查 PHP 語法與重複常數
    每完成一步就重測同一個最小重現,確認問題是否改變。
  4. 4. 先在 staging 套用
    每完成一步就重測同一個最小重現,確認問題是否改變。
  5. 5. 正式部署後立即測首頁、後台與 REST
    只把已在測試環境通過的最小變更套用到正式站,並立刻跑回歸測試。

不要同時清瀏覽器、外掛、主機與 CDN 快取後就宣稱修好;應知道哪一層提供舊內容,才能建立正確失效規則。

如何確認修復成功

PHP 語法通過,前後台 200,敏感資料未出現在頁面、日誌或 Git 歷史。

  • 以原本的最小重現步驟再次測試。
  • 檢查首頁、登入、REST API、表單與網站最重要的交易流程。
  • 查看 PHP error log、瀏覽器 Console 與 Network 是否新增錯誤。
  • 以 390px 手機寬度確認沒有版面級橫向溢位。

把症狀與證據對成一條排查路徑

目前看到的症狀 先驗證的原因 最小安全動作
加入常數後網站語法錯誤 引號或分號錯誤 確認真正使用的 WordPress 根目錄
WP_DEBUG 開啟後錯誤公開顯示 重複定義常數 以安全編輯器建立最小差異
設定檔被提交到公開 Git 在錯誤位置修改或暴露敏感資訊 檢查 PHP 語法與重複常數

這張表不是用來直接判定根因,而是把「看到什麼、要查什麼、哪個動作可回復」放在同一列。若第一列的證據不成立,就不要跳到高風險修改。

如何還原

直接還原完整原檔並保持原擁有者與權限,清除 PHP opcode cache 後重測。

若回退仍未恢復,停止加入更多變更,回到最後一個已知正常版本並重新建立時間線。

何時應停止自行操作

若沒有可還原備份、錯誤影響付款或個資、發現惡意程式,或需要直接修改資料庫但不理解關聯,應停止自行操作並尋求專業協助。

停止不是放棄,而是避免把可復原的錯誤變成停機、資料損失或資安事件。準備好時間線、備份、錯誤日誌與已嘗試步驟,能顯著縮短專業人員的診斷時間。

常見問題

可以直接在正式站測試嗎?

不建議。先備份並在測試環境重現,正式站只套用已驗證的最小變更。

需要關閉所有外掛嗎?

不應在沒有計畫時一次關閉。先保存清單,再用隔離或健康檢查方式逐步排除。

修好後要做什麼?

清除必要快取、重測主要流程、保存變更紀錄並確認監控沒有新錯誤。

官方文件與查核來源

以下文件用於核對 WordPress、WooCommerce、PHP 或資料庫行為。第三方外掛與主機設定仍需查閱該產品當前版本的正式文件。