WordPress配置核心文件wp-config.php详解

wp-config.php文件概述

/**
?* WordPress基础配置文件。
?*
?* 这个文件被安装程序用于自动生成wp-config.php配置文件,
?* 您可以不使用网站,您需要手动复制这个文件,
?* 并重命名为“wp-config.php”,然后填入相关信息。
?*
?* 本文件包含以下配置选项:
?*
?* * MySQL设置
?* * 密钥
?* * 数据库表名前缀
?* * ABSPATH
?*

数据库信息

WordPress链接数据库需设定以下四个值:

// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('WP_CACHE', true); //Added by WP-Cache Manager
define( 'WPCACHEHOME', 'C:\xxx\wp-content\plugins\wp-super-cache/' ); //Added by WP-Cache Manager
define('DB_NAME', 'xxxxxx');

/** MySQL数据库用户名 */
define('DB_USER', 'xxxxxx');

/** MySQL数据库密码 */
define('DB_PASSWORD', 'xxxxxxxxx');

/** MySQL主机 */
define('DB_HOST', 'localhost');

/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8mb4');

/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');

在创建数据库前就需准备好数据库名称、用户名、密码,最后一个DB_HOST值可能比较难获得,最常见的是直接用“localhost”, 甚至你可以给数据库服务器指定一个备用端口。例如:

define('DB_HOST', 'localhost:1234');
define('DB_HOST', 'laoji.org:1234');

还有一种更好的方法就是自动检测数据库服务器值:

define('DB_HOST', $_ENV{DATABASE_SERVER});

数据库字符集和整理(collation)

你可以给MySQL数据库指定字符集。一般来说,不需要修改默认字符集UTF-8,因为它支持所有的语言。注意,如果wp-config.php文件里,这一字符集已经存在,你只能使用此字符集。下面是默认的设置,也是我推荐大家使用的设置:

define('DB_CHARSET', 'utf8');

还可以指定collation(校勘/整理),对你的数据库字符集排序。Collation的设置通常由MySQL依据字符集自动处理的,在默认设置里的collation值保留空白就可以。默认的设置:

define('DB_COLLATE', '');

安全密匙

截至WordPress 4.xx后有8个安全密匙来加密cookies。这些密匙只需让它默默无闻地工作就好,并尽可能随意和复杂(你无需记住)。生成这些密匙的最简单方法就是通过WordPress官方密匙服务来自动生成。只要点击这个服务,复制并粘贴生成的结果到wp-config.php 文件中即可。注意,这些密匙可随时更改,这样一来,用户之前的cookies会被清除需要重新登陆你的网站。

define('AUTH_KEY',         'K^M{X4m_q bux?X!Jum2_mnn=y:b2M._]-,lg_(^2PJu6-;?-|4:K[0qdII*[YfY');
define('SECURE_AUTH_KEY',  'Xh,;hV8)-eUu+|w(.AR}R5yW@D!/q[~@]bC.s+!P,)5vun;B2b_45|IB/|I=x[#I');
define('LOGGED_IN_KEY',    '8$HO+Ytb69SXNcKpDj5`;/?ijM|8h_dhV!,*Q|R+:RCUBYKNOG?**?~wTj5vOb->');
define('NONCE_KEY',        'Yq?EXO%H{mWq~JnS-zXxi..-F@S}-~rqu6}H;t@5#1MoFl,n<WigQgL;>YRksG%F');
define('AUTH_SALT',        'M.y;J!5|jx^,]9T|7YSxmk&,e(/5V&+r4Lr+076.1>_3M|]^KBk)]+6Nc+*^.x(:');
define('SECURE_AUTH_SALT', 'lf?Mq&K>-@2+Oq=6t|:j)2pgSbZ9}@; E}SA4azpvW`^ 2$I7o^Y{d<|0%M|`PTc');
define('LOGGED_IN_SALT',   'v|[l##c[9!NHS3.)>^v8mHQo$>6<0bCw/t}=|`<-,c- S&2bnC;p8t.j%z-?c]hI');
define('NONCE_SALT',       '#jMZV%&^v:6FJ&8st4|G.nq:U~LS&9{f6egITEK5?S39WJ%p=96uR;7L7!iD%+S|');

WordPress数据表前缀

/**
?* WordPress数据表前缀。
?*
?* 如果您有在同一数据库内安装多个WordPress的需求,请为每个WordPress设置
?* 不同的数据表前缀。前缀名只能为数字、字母加下划线。
?*/
$table_prefix  = 'wp_';

有很多攻击者就是对准这些默认前缀的数据库进行攻击。稍微修改为如: “ch_”之类的可避免此类攻击。把wp改成你的数据库前缀,你还可以使用此设置实现在一个数据库中安装多个WordPress站点,只要给每一个WordPress指定一个单独的数据库前缀即可:

$table_prefix = 'wp1_'; // 第一个博客
$table_prefix = 'wp2_'; // 第二个博客
$table_prefix = 'wp3_'; // 第三个博客

开发者专用:WordPress调试模式

/**
?* 开发者专用:WordPress调试模式。
?*
?* 将这个值改为true,WordPress将显示所有用于开发的提示。
?* 强烈建议插件开发者在开发环境中启用WP_DEBUG。
?*
?* 要获取其他能用于调试的信息,请访问Codex。
?*
?* @link https://codex.wordpress.org/Debugging_in_WordPress
?*/
define('WP_DEBUG', false);

zh_CN本地化设置:启用ICP备案号显示

/**
?* zh_CN本地化设置:启用ICP备案号显示
?*
?* 可在设置→常规中修改。
?* 如需禁用,请移除或注释掉本行。
?*/
define('WP_ZH_CN_ICP_NUM', true);

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注