wp-config.php 基本設定:檔案 & 記憶體·內容修訂 SSH、SFTP、cPanel 設定指南

wp-config.php 檔案是 WordPress 網站最重要的設定檔。這個檔案存放 WordPress 連線資料庫與運作所需的 核心資訊,就像網站的心臟。
Ⅰ. wp-config.php 的角色
這個檔案包含下列敏感設定。

因為這些特性,wp-config.php 檔案會成為外部攻擊者的 首要攻擊目標。如果檔案的存取權限設錯或內容外洩,可能導致整個資料庫外洩,或網站管理權限被奪走,形成嚴重的 安全漏洞。因此,強化 WordPress 安全的第一步,就是確保這個檔案的安全。
1️⃣ wp-config.php 檔案位置
wp-config.php 位於安裝 WordPress 的最上層資料夾,和 [wp-admin]·[wp-content]·[wp-includes] 資料夾在同一層。cPanel 主機的這個位置是 [public_html] 資料夾,VPS 則放在網站根目錄(例如 [/var/www/html/wp-config.php])。
如果在最上層資料夾看不到這個檔案,就檢查上一層資料夾。WordPress 會先在安裝資料夾尋找 wp-config.php,找不到時再從正上方的資料夾載入。
2️⃣ 開啟 wp-config.php 的方法
在主機控制台的 [File Manager] 移到最上層資料夾,對 wp-config.php 按滑鼠右鍵並選擇 [Edit]。這是不需另外安裝程式、直接在瀏覽器中修改的方法。
FTP 程式(FileZilla)可以把檔案下載到自己的電腦,用編輯器修改後再上傳。上傳前先另外保存一份原始檔,出錯時就能立刻還原。
像 VPS 這樣透過 SSH 連線的伺服器,在編輯器名稱 [vi] 後面加上檔案路徑執行即可,[nano] 也能用同樣方式開啟。
vi /var/www/html/wp-config.php3️⃣ wp-config-sample.php 與基本結構
剛下載的 WordPress 壓縮檔裡沒有 wp-config.php,同一個位置只有 [wp-config-sample.php]。在安裝畫面輸入資料庫資訊後,WordPress 會以這個檔案為基礎產生 wp-config.php,自己複製後改名也會得到相同結果。
define( 'DB_NAME', 'database_name_here' );
define( 'DB_USER', 'username_here' );
define( 'DB_PASSWORD', 'password_here' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8mb4' );
define( 'DB_COLLATE', '' );
define( 'AUTH_KEY', 'put your unique phrase here' );
define( 'SECURE_AUTH_KEY', 'put your unique phrase here' );
define( 'LOGGED_IN_KEY', 'put your unique phrase here' );
define( 'NONCE_KEY', 'put your unique phrase here' );
define( 'AUTH_SALT', 'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT', 'put your unique phrase here' );
define( 'NONCE_SALT', 'put your unique phrase here' );
$table_prefix = 'wp_';
define( 'WP_DEBUG', false );[DB_NAME]·[DB_USER]·[DB_PASSWORD]·[DB_HOST] 這四行填入主機商提供的資料庫資訊。只要有一個值錯誤,就會顯示 [Error establishing a database connection] 錯誤,而不是網站。
從 [AUTH_KEY] 到 [NONCE_SALT] 這八行是加密登入 Cookie 的值,從 [https://api.wordpress.org/secret-key/1.1/salt/] 取得新的一組後整批替換。更換這些值後,所有已登入的使用者都會被登出。
[$table_prefix] 是加在資料表名稱前面的前置詞,預設值為 [wp_],在同一個資料庫安裝多個 WordPress 時用來區分彼此。把 [WP_DEBUG] 改成 [true] 後 PHP 錯誤會顯示在畫面上,所以運作中的網站要維持 [false]。
Ⅱ. 安裝 WordPress 後套用的 wp-config.php 基本設定
所有設定行都放在 /* That’s all, stop editing! Happy publishing. */ 註解上方。在下方模擬器中從 SSH·cPanel·FTP 選擇連線方式並開啟 wp-config.php,就會直接跳到左側所按設定的那一行。
- 設定常數(define)放上面: 大部分與 WordPress 設定相關的常數(define)都必須定義在 /* That’s all, stop editing! Happy publishing. */ 這行註解的正上方, WordPress 才能在初始化設定的過程中正常載入。
- WordPress 從下方開始載入: 這行註解下方有 [ABSPATH] 的定義和 [require_once( ABSPATH . ‘wp-settings.php’ );] 這段程式碼。從載入這個 [wp-settings.php] 檔案的那一刻起,WordPress 的核心功能才真正開始運作。
WP_MAX_MEMORY_LIMIT 則是「管理員與內部處理用的擴充上限」。
兩者必須一起設定,才能 完整控制 WordPress 的記憶體。


/wp-admin/admin-ajax.php 從網頁瀏覽器執行 AJAX 呼叫。在 WordPress 控制台中,這個檔案每 15 秒就會送出一次 POST 要求。


/** Disable Heartbeat everywhere except post editor */
add_action('init', function() {
global $pagenow;
if ($pagenow != 'post.php' && $pagenow != 'post-new.php') {
wp_deregister_script('heartbeat');
}
}, 1);🔢 FAQ & 推薦內容
ℹ️ 聯盟行銷說明
本站內容包含聯盟行銷連結。訪客透過這些連結購買商品或服務時,本站會從賣家獲得佣金。在這個過程中,購買者支付的金額(遇到活動折扣時金額會降低↓)並不會因此提高。刊登的價格、折扣與庫存資訊以撰寫當時為準,可能與實際情況不同,購買前請向賣家做最後確認。商品的挑選與評價依本站自訂的標準撰寫,是否支付佣金不會影響介紹順序或評價內容。