如何在WordPress中编辑wp-config.php文件
wp-config.php配置文件是WordPress最重要的文件之一。它位于根目录中,并包含常量定义和PHP指令。
基本的wp-config.php文件
什么是wp-config.php文件?顾名思义,它是所有WordPress网站一部分的配置文件。
与其他文件不同,wp-config.php文件不是WordPress内置的,而是在安装过程中专门为您的站点生成的,WordPress在安装过程中创建wp-config.php文件。
WordPress将您的数据库信息存储在wp-config.php文件中,没有这些信息,您的WordPress网站将无法正常工作,并且您将收到“建立数据库连接错误”错误。除了数据库信息外,wp-config.php文件还包含其他高级设置。
编辑wp-config.php文件
需要编辑wp-config.php文件之前,需要做创建一个完整的WordPress备份,wp-config.php文件对WordPress网站是非常重要,以至于微小的错误将使您的网站无法访问。
可通过FTP客户端来连接到您的网站如WinSCP或SmartFTP,而Mac用户可以尝试使用ForkLift。
wp-config.php文件通常与其他文件夹(如/ wp-content /)位于网站的根文件夹中。只需单击然后从菜单中下载。FTP客户端将把wp-config.php文件下载到您的计算机上。可以使用纯文本编辑器程序(如记事本或文本编辑)打开和编辑它。
默认wp-config.php文件的完整代码
<?php
/** Enable W3 Total Cache */
define('WP_CACHE', true); // Added by W3 Total Cache
/**
* WordPress基础配置文件。
*
* 这个文件被安装程序用于自动生成wp-config.php配置文件,
* 您可以不使用网站,您需要手动复制这个文件,
* 并重命名为“wp-config.php”,然后填入相关信息。
*
* 本文件包含以下配置选项:
*
* * MySQL设置
* * 密钥
* * 数据库表名前缀
* * ABSPATH
*
* @link https://codex.wordpress.org/zh-cn:%E7%BC%96%E8%BE%91_wp-config.php
*
* @package WordPress
*/
// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define( 'DB_NAME', 'testweb' );
/** MySQL数据库用户名 */
define( 'DB_USER', 'root' );
/** MySQL数据库密码 */
define( 'DB_PASSWORD', '' );
/** MySQL主机 */
define( 'DB_HOST', 'localhost' );
/** 创建数据表时默认的文字编码 */
define( 'DB_CHARSET', 'utf8mb4' );
/** 数据库整理类型。如不确定请勿更改 */
define( 'DB_COLLATE', '' );
/**#@+
* 身份认证密钥与盐。
*
* 修改为任意独一无二的字串!
* 或者直接访问{@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org密钥生成服务}
* 任何修改都会导致所有cookies失效,所有用户将必须重新登录。
*
* @since 2.6.0
*/
define( 'AUTH_KEY', '|K{eK%5s&26_UFc9iuay;*(Gqmawcjq?_r0u6w1f#yT3cLa-8s(9&H|T-^,(j SV' );
define( 'SECURE_AUTH_KEY', 'WW(JwZY:+-d<l7!Jdi3Y+0]MB, snJq((!wN0GK#<|$u6TNg&?PjSU=KAJ>G2/;~' );
define( 'LOGGED_IN_KEY', 'f>*#G[HbQ-fc;M(R40N`TVl{Z,]VTB:DS@YTx5#e#]Zwzr[;sICBjcK(Q0jbl,M~' );
define( 'NONCE_KEY', '?p23rH)B,9Aw/w%ZVKaf)EDg.1bhQyI1?cvue>9Cxg r;25+(hciqL4wt@$]nR0z' );
define( 'AUTH_SALT', '!&M>u+UrI7$LADhc=HZ_vGrU9[ACOWmzoC{?/ UACxwwbx%{*L%W]=%7s!qawu_<' );
define( 'SECURE_AUTH_SALT', '~zNlO?/f2j_gDzQciiJ7R;xxt`s3J1ZmiS@i8nvI/)sSmDei9QDDsTjp|QfSR:>)' );
define( 'LOGGED_IN_SALT', 'I)@9H4k`]hL;&-W3~WiX-S:n,HFRqF$Y|-{Nej tQ}2~xvzZ`,tF&n:G!04YY~p%' );
define( 'NONCE_SALT', 's#~psZ91RbFBUA9[VlgRwdLX#llkrUm0L<;>iE2bodHImY!<(B2I-!O%6P!#?lq$' );
/**#@-*/
/**
* WordPress数据表前缀。
*
* 如果您有在同一数据库内安装多个WordPress的需求,请为每个WordPress设置
* 不同的数据表前缀。前缀名只能为数字、字母加下划线。
*/
$table_prefix = 'wp_';
/**
* 开发者专用:WordPress调试模式。
*
* 将这个值改为true,WordPress将显示所有用于开发的提示。
* 强烈建议插件开发者在开发环境中启用WP_DEBUG。
*
* 要获取其他能用于调试的信息,请访问Codex。
*
* @link https://codex.wordpress.org/Debugging_in_WordPress
*/
define('WP_DEBUG', false);
/* 好了!请不要再继续编辑。请保存本文件。使用愉快! */
/** WordPress目录的绝对路径。 */
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', dirname( __FILE__ ) . '/' );
}
/** 设置WordPress变量和包含文件。 */
require_once( ABSPATH . 'wp-settings.php' );
wp-config.php文件中的MySQL设置
您的WordPress数据库连接设置显示在wp-config.php文件的“ MySQL Settings”部分下。您将需要您的MySQL主机,数据库名称,数据库用户名和密码来填写此部分。
// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define( 'DB_NAME', 'testweb' );
/** MySQL数据库用户名 */
define( 'DB_USER', 'root' );
/** MySQL数据库密码 */
define( 'DB_PASSWORD', '' );
/** MySQL主机 */
define( 'DB_HOST', 'localhost' );
/** 创建数据表时默认的文字编码 */
define( 'DB_CHARSET', 'utf8mb4' );
/** 数据库整理类型。如不确定请勿更改 */
define( 'DB_COLLATE', '' );
您可以从网络托管帐户的cPanel下的“数据库”部分获取数据库信息。
安全秘钥
安全密钥,可帮助提高WordPress网站的安全性。这些密钥为WordPress生成的用户会话和cookie提供了强大的加密功能。
/**#@+
* 身份认证密钥。
*
* 修改为任意独一无二的字串!
* 或者直接访问{@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org密钥生成服务}
* 任何修改都会导致所有cookies失效,所有用户将必须重新登录。
*
* @since 2.6.0
*/
define( 'AUTH_KEY', '|K{eK%5s&26_UFc9iuay;*(Gqmawcjq?_r0u6w1f#yT3cLa-8s(9&H|T-^,(j SV' );
define( 'SECURE_AUTH_KEY', 'WW(JwZY:+-d<l7!Jdi3Y+0]MB, snJq((!wN0GK#<|$u6TNg&?PjSU=KAJ>G2/;~' );
define( 'LOGGED_IN_KEY', 'f>*#G[HbQ-fc;M(R40N`TVl{Z,]VTB:DS@YTx5#e#]Zwzr[;sICBjcK(Q0jbl,M~' );
define( 'NONCE_KEY', '?p23rH)B,9Aw/w%ZVKaf)EDg.1bhQyI1?cvue>9Cxg r;25+(hciqL4wt@$]nR0z' );
define( 'AUTH_SALT', '!&M>u+UrI7$LADhc=HZ_vGrU9[ACOWmzoC{?/ UACxwwbx%{*L%W]=%7s!qawu_<' );
define( 'SECURE_AUTH_SALT', '~zNlO?/f2j_gDzQciiJ7R;xxt`s3J1ZmiS@i8nvI/)sSmDei9QDDsTjp|QfSR:>)' );
define( 'LOGGED_IN_SALT', 'I)@9H4k`]hL;&-W3~WiX-S:n,HFRqF$Y|-{Nej tQ}2~xvzZ`,tF&n:G!04YY~p%' );
define( 'NONCE_SALT', 's#~psZ91RbFBUA9[VlgRwdLX#llkrUm0L<;>iE2bodHImY!<(B2I-!O%6P!#?lq$' );
可以生成WordPress安全密钥并将其粘贴到此处。如果怀疑WordPress网站遭到入侵,则此功能特别有用。更改安全密钥将注销WordPress网站上所有当前登录的用户,迫使他们再次登录。
WordPress数据库表前缀
默认情况下,WordPress将wp_前缀添加到WordPress创建的所有表中。建议您将WordPress数据库表前缀更改为随机值。这将使黑客难以猜测您的WordPress表,并使您免受某些常见的SQL注入攻击。
$table_prefix = 'wp_';
请注意,不能为正在运行的的WordPress网站更改此值数据库表前缀。可参考如何更改WordPress数据库前缀
WordPress调试模式
WordPress调试模式对于在学习WordPress建站的用户特别有用。默认情况下,WordPress在执行代码时会隐藏PHP生成的通知。只需将调试模式设置为true即可向您显示这些通知,为发现错误提供了重要信息。
define('WP_DEBUG', false);
内容相关设置
wp-config.php配置文件不仅可以设置数据库的重要信息,也能设置内容方面的信息,如绝对路径、站点地址等
绝对路径设置
/** WordPress目录的绝对路径。 */
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', dirname( __FILE__ ) . '/' );
}
/** 设置WordPress变量和包含文件。 */
require_once( ABSPATH . 'wp-settings.php' );
wp-config文件的最后一部分定义了绝对路径,该绝对路径随后用于设置WordPress vars和包含的文件。您根本不需要在此处进行任何更改。
使用wp-config.php文件更改WordPress URL
将WordPress网站移至新域名或新的虚拟主机时,可能需要更改WordPress URL。您可以通过访问设置-常规来更改这些URL 。
也可以使用wp-config.php文件更改这些URL。只需将这两行添加到您的wp-config.php文件中:
define('WP_HOME','https://pythonthree.com');
define('WP_SITEURL','https://pythonthree.com');
不要忘记用您自己的域名替换https://pythonthree.com。
使用wp-config.php更改上传目录
默认情况下,WordPress将所有媒体上传内容存储在/ wp-content / uploads /目录中。如果要将媒体文件存储在其他位置,则可以通过在wp-config.php文件中添加以下代码行来实现。
define( 'UPLOADS', 'wp-content/media' );
请注意,上传目录路径是相对于WordPress中自动设置的ABSPATH而言的。
禁用WordPress中的自动更新
WordPress CMS已经引入了自动更新,允许WordPress网站自动更新,但是某些情况下,可能导致WordPress网站无法访问,
将这行代码添加到wp-config.php文件将禁用WordPress网站上的所有自动更新。
define( 'WP_AUTO_UPDATE_CORE', false );
限制WordPress中的帖子修订
WordPress带有内置的自动保存和修订,将这行代码添加到wp-config.php文件中,以限制为帖子存储的修订版本数。
define( 'WP_POST_REVISIONS', 3 );
可以将数字3替换为要存储的修订版本号。
其他高级设置
锁定wp-config.php
我们知道wp-config.php是最重要的WordPress文件之一,那么,我们不将其隐藏呢?如果您的网站在Apache Web服务器上运行,则可以将以下指令添加到.htaccess文件中:
<files wp-config.php>
order allow,deny
deny from all
</files>
如果网站在Nginx上运行,则可以将以下指令添加到配置文件中:
location ~* wp-config.php { deny all; }
修改wp-config.php文件权限
WordPress网站根目录中的文件将设置为644,这意味着文件的所有者可以读取和写入文件,那么我们根据文档可将wp-config.php文件的权限应设置为440或400,以防止服务器上的其他用户读取它。