在每個 WordPress 網站中,都有一個可以產生很大影響力的特殊文件:wp-config.php 檔案,你應該了解該文件的基本知識。
我將整理出一些簡單而且常用的設定,可以讓網站更好、更安全的運行。
修改 wp-config.php 文件重點:
- 找到檔案:wp-config.php 文件位於 WordPress 安裝的根目錄中。需要透過 FileZilla 等 FTP 用戶端存取這個文件。
- 開始之前備份:在進行任何更改之前,請務必建立 wp-config.php 文件的備份,確保出現任何問題,可以快速恢復到原始狀態。
- 請注意:wp-config.php 檔案對於 WordPress 網站的運行非常重要,一個小錯誤或一個不正確的常數值,都有可能會破壞網站運行。
修改 wp-config.php 文件前,請先做好文件備份。
內容目錄:
- WP_ALLOW_REPAIR:自動修復資料庫
- DISALLOW_FILE_EDIT:禁用 WP 控制台編輯文件
- WP_POST_REVISIONS:控制保存的修訂次數
- WP_MEMORY_LIMIT:自定記憶體使用量
- WP_DEBUG:WP 的偵錯模式
- WP_DEBUG_DISPLAY:WP_DEBUG 產生的錯誤和警告是否顯示
- WP_DEBUG_LOG:紀錄 WP_DEBUG 產生的錯誤碼
- ALLOW_UNFILTERED_UPLOADS:允許上傳任何類型的檔案
- RECOVERY_MODE_EMAIL:自動電子郵件通知網站管理員
- WP_HOME & WP_SITEURL:禁止修改 WP 控制台的網站的網址
1. WP_ALLOW_REPAIR
如果懷疑網站的資料庫已損壞,可以定義此常數並允許 WordPress 自動修復它,如下所示:
define('WP_ALLOW_REPAIR', true);
設定後,它會啟用資料庫修復頁面,可以透過訪問該頁面 https://yourwpsite.com/wp-admin/maint/repair.php
完成後,不要忘記將其刪除或將其設為 false。
2. DISALLOW_FILE_EDIT
禁用 WP 控制台去編輯佈景主題或外掛文件,這是提高 WordPress 安全性作法之一。
define('DISALLOW_FILE_EDIT', true);
如果你正在管理客戶的網站,並且希望確保客戶或任何其他使用者都不會無意或有意地直接從 WordPress 控制台編輯主題或外掛文件,則可以使用此常數。
3. WP_POST_REVISIONS
預設下 WordPress 將文章或頁面的每個版本儲存為修訂版,這會佔用大量資料庫空間,使用此常數來控制保存的修訂次數,範例中修訂次數設定為 5。
define('WP_POST_REVISIONS', 5);
或者完全禁用它
define('WP_POST_REVISIONS', false);
4. WP_MEMORY_LIMIT
隨著你的網站不斷發展、需要用到更多的外掛,尤其是 Elementor Pro 編輯器 + Crocoblock 外掛,就要需要更多記憶體才能順利運作。
WP_MEMORY_LIMIT 常數可指定 WordPress 進程的 PHP 可以消耗的最大記憶體量,在伺服器允許下,可以設定自訂值:
define('WP_MEMORY_LIMIT', '512M');
在有的網路教學中,會教你再加一個常數值:
define( 'WP_MAX_MEMORY_LIMIT', '512M' );
上面 2 個常數值的差別是一個限制前端使用記憶體,另一個是 WP 控制台後端限制的記憶體用量。
目前我測試使用第一個常數設定,WP 控制台後端也可以正常運作,你也可以保險一點,2 個常數設定都加上去。
5. WP_DEBUG
define('WP_DEBUG', true);
該常數會觸發整個 WordPress 的「偵錯」模式,當設定為 true 時,WordPress 將開始顯示 PHP 錯誤、通知和警告。
它是網站開發過程中查詢問題的寶貴工具,有了這些錯誤才可以了解有問題的外掛、佈景主題或自訂程式碼。
當網站開發階段完成後,轉成正式的生產網站上後,WP_DEBUG 常數應設定為 false。
6. WP_DEBUG_DISPLAY
define('WP_DEBUG_DISPLAY', false);
此常數控制 WP_DEBUG 產生的錯誤和警告是否顯示在螢幕上;當設定為 false 時,這些錯誤將對使用者隱藏,並與 WP_DEBUG_LOG 結合使用,這表示錯誤將被記錄在日誌中,但不會顯示在網站上。
7. WP_DEBUG_LOG
define('WP_DEBUG_LOG', true);
當此常數設為 true 時,網頁上會顯示的任何錯誤 (由 WP_DEBUG 和 WP_DEBUG_DISPLAY 常數控制) 這些錯誤碼都會儲存到 wp-content 目錄內的 debug.log 檔案中。
這可以提供了一種追蹤一段時間內的錯誤或現在觸發錯誤問題的方法。
8. ALLOW_UNFILTERED_UPLOADS
define('ALLOW_UNFILTERED_UPLOADS', true);
是否有碰過將文件上傳到 WordPress 媒體庫,卻收到一條訊息,告訴你「Sorry, this file type is not permitted for security reasons」或「filename」上傳失敗 ?
出於安全原因,WordPress 限制了可以上傳到網站的檔案類型。
但是,透過 wp-config.php 檔案增加常數或使用外掛,可以允許你上傳任何類型的檔案。
尤其是目前流行的 SVG 圖片檔案,可以省略安裝外掛,以 wp-config.php 設定常數的方式達成。
9. RECOVERY_MODE_EMAIL
define( 'RECOVERY_MODE_EMAIL', 'email@domain.com' );
從 WordPress 5.2 開始,內建偵測到外掛或佈景主題造成網站嚴重錯誤時會以自動電子郵件通知網站管理員的功能。
這封電子郵件通知包含全新恢復模式的存取連接,但其中一個 URL 參數在儲存到資料庫之前經過加密,只能這一封電子郵件中可以用。
如果,你是一位網站維護人員,沒有收到電子郵件,也無法存取恢復模式。
利用上面這個常數設定,網站維護人員也可以同時收到一封 WordPress 通知信件 (請將 email@domain.com 更換為你的郵件地址)。
10. WP_HOME & WP_SITEURL
define('WP_HOME','https://example.com');
define('WP_SITEURL','https://example.com');
禁止修改 WordPress 控制台的「設定」>「 一般」裡設定網站的網址。
為了不讓使用者或客戶誤改了網站的網址,造成無法訪問網站的嚴重問題,我們可以在 wp-config.php 文件裡加入此常數,並將 example.com 替換為你的網域名稱 (Domain)。
- WP_HOME:是 WordPress 核心應用程式檔案的位置 (WordPress 安裝目錄)。
- WP_SITEURL:是公共 WordPress 網站的網址 (使用者連結到你網站的網址)。
對 wp-config.php 文件的每一次的設定都可以增加你對網站控制,但請務必謹慎使用。
Photo by Sasha Rubaniuk on Unsplash
發佈留言