wp-config.php 文件是什麼?
已發表: 2023-05-03wp-config.php 文件是 WordPress 最重要的文件之一。 它包含使 WordPress 工作所需的配置信息。 顧名思義,它是用 PHP 編寫的——WordPress 正是基於這種語言構建的。
該文件是在您安裝 WordPress 時自動生成的; 但是,之後可以隨時對其進行編輯。 雖然您在管理 WordPress 網站的常規過程中不需要訪問或編輯該文件,但在某些情況下您可能需要這樣做。 這是我們接下來要討論的。
注意:如果您出於任何原因要編輯文件,請確保先進行備份。
目錄
- wp-config.php 文件的用途是什麼?
- 數據庫設置
- 高級選項
- 何時編輯 wp-config 文件
- 如何訪問 wp-config.php
- 文件傳輸協議
- SSH
- 面板
- 託管服務提供商(託管 WordPress)
- wp-config.php 的結構
- 常見的 wp-config 編輯
- 數據庫
- 數據庫名稱
- 數據庫用戶名
- 數據庫密碼
- 數據庫主機名
- 數據庫字符集
- 數據庫整理類型
- 數據庫表前綴
- 安全
- 鑰匙和鹽
- SSL
- 行政
- 調試
- 其他調試選項
- 腳本調試
- 保存查詢
- WordPress 更新
- 禁用自動更新
- 配置更新
- 文件系統
- 對於 wp-content 文件夾
- 對於插件文件夾
- 對於上傳文件夾
- 內容
- 自動保存
- 發布修訂
- 內存限制
- wp-config.php – 一個值得了解的文件
- 數據庫
- wp-config.php 文件的用途是什麼?
wp-config.php 文件的用途是什麼?
如前所述,wp-config 用於配置 WordPress 的不同方面。 它包含重要信息,例如數據庫連接信息——強大的 WordPress 數據庫安全性的一個重要方面。
wp-config 允許的一些配置對於大多數網站來說不是必需的,而一些配置選項可以通過 WordPress 儀表板處理。 話雖如此,您可以通過 wp-config 配置很多東西——比許多人想像的要多。
可以通過 wp-config 配置的設置和選項分為兩類之一——數據庫設置和高級選項。 接下來我們將分別研究這兩個類別。
數據庫設置
顧名思義,在數據庫設置類別中,我們可以設置一些數據庫設置。 這些包括:
數據庫名稱: WordPress 數據庫的名稱。
數據庫用戶和密碼: WordPress 用來訪問數據庫的用戶名和密碼
數據庫主機:託管數據庫的地方
Database character set and collation: The character set and collation(字符集是如何排序的)
安全密鑰:用於保護信息的加密密鑰和鹽。
高級選項
在高級選項中,我們發現了幾種不同的配置。 該列表非常廣泛,包括以下內容:
表前綴:數據庫表的前綴,默認為'wp_'。
站點和博客 URL:定義網站和博客 URL
文件夾位置:定義 wp-content、插件、主題和上傳的位置
自動保存: WordPress 應該多久自動保存一次帖子
修訂:啟用或禁用後期修訂以及存儲的後期修訂數量
錯誤:配置恢復模式、錯誤日誌記錄和調試選項
環境類型:設置環境的安裝類型,例如本地、開發、暫存或生產
內存:設置PHP內存限制
更新:啟用或禁用自動更新和升級常量
Cron:啟用或禁用 Cron 和 Cron 超時並設置替代 Cron
插件和主題:啟用或禁用插件和主題編輯器、更新和安裝
SSL:登錄和管理區域需要 SSL
此列表並非詳盡無遺。 可以使用新更新在 wp-config 文件中添加和刪除設置。 如有疑問,請參閱 WordPress.org 的最新文檔。
何時編輯 wp-config 文件
大多數 WordPress 管理員和網站所有者不需要編輯 wp-config 文件。 該文件是在初始 WordPress 設置期間自動生成的。 對於大多數網站來說,初始配置就足夠了。 但是,如果您的 WordPress 環境發生重大變化或者您需要實施其他設置,您可能需要編輯 wp-config 文件。
本文將介紹一些比較常見的配置編輯管理員,以及網站所有者通過wp-config.php 進行的配置。 確保您繼續閱讀以了解更多信息。
如何訪問 wp-config.php
可以通過不同的方式訪問 wp-config 文件。 根據您的 WordPress 託管方式,不同的訪問選項可能適用於您。 通常,您可以通過以下四種方式之一訪問該文件:
文件傳輸協議
訪問 wp-config.php 文件的最簡單方法之一是通過 FTP/SFTP。 您的託管服務提供商將提供連接詳細信息。 您需要一個 FTP 客戶端,例如 FileZilla; 但是,一些託管服務提供商提供了一個基於網絡的界面,允許您以同樣的方式進行連接。
您應該在 WordPress 根目錄中找到 wp-config 文件,通常是 public_html 文件夾。
SSH
SSH 是另一種流行的選擇; 但是,這需要對運行 Web 服務器的 OS(操作系統)有所了解。 您的託管服務提供商還將提供您的連接詳細信息。
面板
如果您的託管計劃/配置包括 cPanel,您可以通過文件管理器訪問 wp-config 文件。
託管服務提供商(託管 WordPress)
如果您使用的是託管 WordPress 託管計劃,您的服務提供商可能會通過他們的後端為您提供訪問權限。 確切的程序因服務提供商而異。 如果您對此不確定,請參閱您的服務提供商提供的文檔。
wp-config.php 的結構
顧名思義,wp-config 文件是用 PHP 編寫的。 這與 WordPress 的編寫語言相同——這是有道理的。 雖然一些 PHP 知識有助於理解和編輯文件,但您無需成為開發人員即可執行此操作。
wp-config 文件對於 WordPress 網站的正常運行至關重要。 如果您不是 100% 確定如何配置該文件,請在進行任何更改之前進行備份,以便在發生某些情況時可以恢復工作版本。 在編輯實時環境的 wp-config 文件之前,您可能還想考慮在暫存環境中測試更改。
重要的是要注意 wp-config 文件在不同的 WordPress 之間可能看起來不同。 雖然基礎知識非常標準,但您的託管服務提供商可能會包含其他條目以滿足其特定設置的要求。
該文件以 PHP 打開語句開頭,告訴網絡服務器上的解釋器該文件確實是 PHP 格式的。
您還會在每個設置之前找到註釋,告訴我們設置是什麼。
使用變量和值配置設置。 變量本質上是設置名稱,而值定義設置本身。
下面是一個示例 wp-config 文件:
<?php
/**
* WordPress 的基本配置
*
* wp-config.php 創建腳本在安裝期間使用此文件。
* 你不必使用網站,你可以將此文件複製到“wp-config.php”
* 並填寫值。
*
* 該文件包含以下配置:
*
**數據庫設置
**秘鑰
**數據庫表前綴
**本地化語言
** 深淵
*
* @link https://wordpress.org/support/article/editing-wp-config-php/
*
* @package WordPress
*/
// 數據庫設置——您可以從您的虛擬主機獲取此信息 //
/** WordPress 的數據庫名稱 */
define( 'DB_NAME', 'database_name_here' );
/** 數據庫用戶名 */
define( 'DB_USER', 'username_here' );
/** 數據庫密碼 */
定義('DB_PASSWORD','password_here');
/** 數據庫主機名 */
定義('DB_HOST','localhost');
/** 用於創建數據庫表的數據庫字符集。 */
定義('DB_CHARSET','utf8');
/** 數據庫整理類型。 如有疑問,請勿更改。 */
定義('DB_COLLATE',”);
/**#@+
* 身份驗證唯一密鑰和鹽。
*
* 將這些更改為不同的獨特短語! 您可以使用生成這些
* {@link https://api.wordpress.org/secret-key/1.1/salt/WordPress.org 密鑰服務}。
*
* 您可以隨時更改這些內容以使所有現有 cookie 失效。
* 這將強制所有用戶必須重新登錄。
*
* @自 2.6.0 起
*/
define( 'AUTH_KEY', '把你獨特的短語放在這裡' );
define( 'SECURE_AUTH_KEY', '把你獨特的短語放在這裡' );
define( 'LOGGED_IN_KEY', '把你獨特的短語放在這裡');
define( 'NONCE_KEY', '把你獨特的短語放在這裡' );
define( 'AUTH_SALT', '把你獨特的短語放在這裡' );
define( 'SECURE_AUTH_SALT', '把你獨特的短語放在這裡' );
define( 'LOGGED_IN_SALT', '把你獨特的短語放在這裡' );
define( 'NONCE_SALT', '把你獨特的短語放在這裡' );
/**#@-*/
/**
* WordPress 數據庫表前綴。
*
* 如果你給每一個,你可以在一個數據庫中有多個安裝
* 唯一的前綴。 請只輸入數字、字母和下劃線!
*/
$table_prefix = 'wp_';
/**
* 對於開發人員:WordPress 調試模式。
*
* 將此更改為 true 以啟用在開發過程中顯示通知。
* 強烈建議插件和主題開發者使用 WP_DEBUG
* 在他們的開發環境中。
*
* 有關可用於調試的其他常量的信息,
* 訪問文檔。
*
* @link https://wordpress.org/support/article/debugging-in-wordpress/
*/
定義('WP_DEBUG',假);
/* 在此行和“停止編輯”行之間添加任何自定義值。 */
/* 就這些,停止編輯! 快樂出版。 */
/** WordPress 目錄的絕對路徑。 */
如果(!定義('ABSPATH')){
define( 'ABSPATH', DIR . '/' );
}
/** 設置 WordPress 變量和包含的文件。 */
require_once 抽象路徑。 'wp-settings.php';
常見的 wp-config 編輯
如前所述,wp-config 文件允許各種 WordPress 配置。 如果我們必須通讀所有這些,我們最終會得到一本書而不是一篇文章。 因此,我們認為如果我們研究一些更常見的設置,突出它們的含義以及需要特別編輯哪些設置以實現特定結果,將會更有價值。
數據庫
最常見的 wp-config 編輯之一是數據庫設置。 您可以在此處配置很多設置,包括;
基本注意事項:更改數據庫設置的值只會更改設置,而不會更改資源的實際值。 例如,更改 wp-config 中的數據庫名稱不會更改 WordPress 使用的實際數據庫名稱。 它只是告訴 WordPress 在查找保存或讀取數據庫數據時查找具有這樣名稱(如 wp-config 中定義)的數據庫。
因此,如果您打算更改任何數據庫設置,請記住您需要更改 wp-config 文件和 WordPress 數據庫本身。
數據庫名稱
數據庫名稱設置允許我們設置 WordPress 存儲其表和數據的數據庫名稱。 這是在安裝期間設置的。
設置編輯:
define( 'DB_NAME', '數據庫名稱' );
數據庫用戶名
數據庫用戶名告訴 WordPress 在連接到數據庫時使用哪個用戶名
設置編輯:
define( 'DB_USER', 'databaseuserhere' );
數據庫密碼
數據庫密碼告訴 WordPress 使用哪個密碼與數據庫用戶名一起訪問數據庫
設置編輯:
define( 'DB_PASSWORD', 'databasepasswordhere' );
數據庫主機名
數據庫主機名告訴 WordPress 數據庫託管在何處(在哪個服務器上)。
設置編輯:
define('DB_HOST', '這裡是數據庫主機名');
數據庫字符集
數據庫字符集告訴 WordPress 在將數據保存到數據庫和從數據庫讀取數據時使用哪個字符集。 默認情況下,它設置為 UTF8,這是自 WordPress 2.2 版以來的首選標準。
設置編輯:
定義('DB_CHARSET','utf8');
數據庫整理類型
數據庫排序規則定義了在排序和比較時使用的字符集和排序順序。 默認情況下,它留空,允許 MySQL(或 MariaDB)服務器分配值。
設置編輯:
定義('DB_COLLATE',”);
數據庫表前綴
更改數據庫表前綴通常作為一種安全措施出現,您可以採取這種措施來最大程度地降低風險。 通常建議將其作為一種良好的安全做法,因為每個人都知道默認的表前綴,這會使您容易受到某些漏洞的影響。
表前綴是在初始 WordPress 安裝過程中設置的。 雖然它可以在 WordPress 啟動並運行後進行更改,但這不僅僅是使用新值更新 wp-config 文件的問題——您還需要手動重命名 MySQL 數據庫中的表。
或者,您可以使用插件來幫助您完成此操作; 但是,請謹慎行事——我們的研究表明,這些插件中的大多數已經很長時間沒有更新了。
設置編輯:
$table_prefix = 'wp_';
安全
WordPress 安全對於確保 WordPress 的健康和繁榮至關重要。 為此,您會在 wp-config 文件中找到許多 WordPress 安全設置和配置,包括:
鑰匙和鹽
密鑰和鹽是 WordPress 安全性的重要組成部分。 密鑰和鹽成對出現,用於散列用戶 cookie 中的會話數據。 一共有四對,如下;
- AUTH_KEY 和 AUTH_SALT :授權用戶登錄 WordPress 並使用不安全的連接(無 SSL)進行更改
- SECURE_AUTH_KEY 和 SECURE_AUTH_SALT :授權用戶登錄 WordPress 並使用安全連接 (SSL) 進行更改
- LOGGED_IN_KEY 和 LOGGED_IN_SALT :授權用戶登錄 WordPress 但不能進行更改
- NONCE_KEY 和 NONCE_SALT :簽署隨機數(使用一次的數字),防止重放攻擊
要編輯的設置:
define( 'AUTH_KEY', '把你獨特的短語放在這裡' );
define( 'SECURE_AUTH_KEY', '把你獨特的短語放在這裡' );
define( 'LOGGED_IN_KEY', '把你獨特的短語放在這裡');
define( 'NONCE_KEY', '把你獨特的短語放在這裡' );
define( 'AUTH_SALT', '把你獨特的短語放在這裡' );
define( 'SECURE_AUTH_SALT', '把你獨特的短語放在這裡' );
define( 'LOGGED_IN_SALT', '把你獨特的短語放在這裡' );
define( 'NONCE_SALT', '把你獨特的短語放在這裡' );
使用 WordPress.org 的隨機密鑰生成器可以輕鬆生成新密鑰。 了解有關 WordPress 安全密鑰和鹽的更多信息。
SSL
在 WordPress (HTTPS) 上使用 SSL/TLS 證書是您可以採取的最基本的安全措施之一。 它加密您的網站和用戶/訪問者之間的所有數據,甚至會促進您的 SEO 工作。 啟用此設置會強制 WordPress 使用 SSL 來保護登錄和 WordPress 管理區域。 請記住,SSL 證書需要已經配置。
設置編輯:
定義('FORCE_SSL_ADMIN',真);
行政
WordPress 是一個非常強大的系統,部分歸功於它的許多管理工具,這些工具允許 WordPress 部署在各種不同的環境中。 在本節中,我們將了解一些您可以通過 wp-config 編輯的最常見的管理設置。
WordPress調試
WordPress 調試工具是用於解決 WordPress 問題的有用工具。 該工具包括四種不同的設置,可啟用調試、日誌記錄和錯誤顯示。
默認情況下,這些設置為 false。 您需要將其更改為 true 以啟用調試。 完成調試後,請記住將其改回 false。
要編輯的設置:
定義('WP_DISABLE_FATAL_ERROR_HANDLER',真); // 5.2 及更高版本
定義('WP_DEBUG',真);
定義('WP_DEBUG_LOG',真);
定義('WP_DEBUG_DISPLAY',假);
其他調試選項
腳本調試
啟用後,腳本調試會加載 WordPress.org 所指的 CSS(層疊樣式表)和 JS (JavaScript) 文件的“開發版本”。
這在測試對 JS 或 CSS 文件的默認版本的更改時非常有用。
默認情況下,這設置為 false
設置編輯:
定義('SCRIPT_DEBUG',真);
保存查詢
啟用後,SAVEQUERIES 保存所有數據庫查詢,包括執行時間和調用它的函數到一個數組,存儲在 $wpdb->queries 中。 默認情況下,這設置為 false。
設置編輯:
定義('SAVEQUERIES',真);
WordPress 更新
WordPress 更新是 WordPress 生態系統的重要組成部分。 WordPress 接收更新以添加新功能、更新現有功能以及修復錯誤和可能存在的任何安全漏洞。 更新是如此重要,以至於 WordPress 提供了一個自動更新選項,以確保您始終運行最新版本的軟件。
禁用自動更新
如果您有在將更新部署到生產環境之前在暫存環境中測試更新的政策,您可能希望完全禁用生產 WordPress 的自動更新。
設置編輯:
定義('AUTOMATIC_UPDATER_DISABLED',真);
配置更新
您還可以選擇自動推出哪些更新,哪些不自動推出。
設置編輯:
定義('WP_AUTO_UPDATE_CORE',真);
- 如果將值設置為 true,將啟用所有更新
- 如果將該值設置為 false,則禁用所有更新
- 如果將值設置為次要,則僅啟用次要更新
文件系統
WordPress 文件系統存儲基本數據,包括 WordPress 核心代碼、主題、插件和上傳。 文件存儲在特定位置,這些位置在 wp-config 文件中配置。 因此,完全可以移動它們,在 wp-config 中配置新位置,以便 WordPress 知道在哪裡可以找到它們。
請記住,在此處更改值不會自動移動文件和文件夾 - 您需要手動執行此操作。
要編輯的設置:
對於 wp-content 文件夾
define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/blog/wp-content' );
define( 'WP_CONTENT_URL', 'http://example/blog/wp-content' );
對於插件文件夾
define( 'WP_PLUGIN_DIR', dirname(__FILE__) . '/blog/wp-content/plugins' );
define( 'WP_PLUGIN_URL', 'http://example/blog/wp-content/plugins' );
define( 'PLUGINDIR', dirname(__FILE__) . '/blog/wp-content/plugins' );
對於上傳文件夾
define('UPLOADS', 'blog/wp-content/uploads' );
無法移動 themes 文件夾,因為它的路徑是硬編碼的。 但是,您可以通過 register_theme_directory 函數創建並註冊一個二級主題文件夾。
內容
內容是 WordPress 網站的核心。 由於 WordPress 本身是一個內容管理系統 (CMS),因此可以通過 wp-admin 配置許多與內容相關的設置。 這些包括:
自動保存
允許您設置 WordPress 自動保存帖子的頻率。 值指示間隔,以秒為單位。 默認值為 60 秒。
設置編輯:
定義('AUTOSAVE_INTERVAL',60);
發布修訂
WordPress 會自動記錄帖子的修訂。 可以禁用此設置,以便不保留任何修訂。 您還可以指定 WordPress 應為給定帖子保留的最大修訂數。
要編輯的設置:
定義('WP_POST_REVISIONS',真);
定義('WP_POST_REVISIONS',3);
內存限制
WordPress 使用 PHP 內存分配來運行。 默認情況下,WordPress 將嘗試在單個站點的情況下分配 40MB,在多站點的情況下分配 64MB。 如果 WordPress 內存不足,您會看到“允許的 x 字節內存大小已耗盡”消息。 在這種情況下,您可能需要增加內存限制。 請記住,託管服務提供商可能會限制您可以分配的內存量。 在下面的示例中,我們將分配 64MB 的內存。
設置編輯:
定義('WP_MEMORY_LIMIT','64M');
wp-config.php – 一個值得了解的文件
wp-config.php 確實是一個值得了解的文件。 正如我們剛剛看到的,它允許您配置 WordPress 的幾個不同方面,為您提供高度的靈活性和對 WordPress 網站的配置和行為的控制。
由於文件可能會更改,因此在進行任何更改之前始終參考 WordPress.org 的官方文檔非常重要。 如有疑問,請記住進行備份,如果可能,請先測試您計劃在暫存服務器上進行的任何更改。 這將幫助您確保更改不會產生負面反應,並且您的網站可以繼續運行。