我们无数次编辑过 wp-config.php 文件——设置高级功能、修复数据库连接问题,或者让本地开发更省心。这是那种当你需要深入挖掘 WordPress 运作方式时就会接触到的文件。一旦知道在哪里找,用起来其实很简单。
这个文件控制着你网站一些最重要的设置——比如数据库访问、调试模式和安全密钥。它就像是一个隐藏的控制面板,让你的网站平稳运行。
在本指南中,我们将向你展示如何安全地使用不同工具查找和编辑 wp-config.php 文件。你将能够做出所需的更改,而不必担心搞坏任何东西。

快速回答:如何在 WordPress 中编辑 wp-config.php 文件?
使用 FTP 客户端(如 FileZilla)或你的主机面板的 File Manager 连接到网站。在根目录中找到 wp-config.php,下载它,用纯文本编辑器编辑,然后上传覆盖。务必先做完整备份。
以下是本指南涵盖的主题列表:
- 为什么要编辑 wp-config.php 文件?
- 什么是 wp-config.php 文件?
- 编辑前先备份
- 如何安全地访问和编辑 wp-config.php 文件
- 理解 wp-config.php 文件
- MySQL 设置
- 身份验证唯一密钥和盐值
- WordPress 数据库表前缀
- WordPress 调试模式
- 绝对路径设置
- 实用的 wp-config.php 技巧和设置
- 更改 MySQL 端口和套接字
- 使用 wp-config.php 更改 WordPress 网址
- 使用 wp-config.php 更改上传目录
- 禁用自动更新
- 限制文章修订版本
- 视频教程
- 常见问题
- 下一步提升你的 WordPress 技能
为什么要编辑 wp-config.php 文件?
wp-config.php 文件让你可以直接控制无法从后台仪表盘更改的核心 WordPress 设置。
- 修复连接错误——纠正数据库凭据、更改网址,或者在无法访问后台时进行故障排除。
- 提升安全性和性能——更新安全密钥、限制文章修订版本,或者为开发环境启用调试模式。
什么是 wp-config.php 文件?
wp-config.php 是每个自托管 WordPress 网站的重要部分。它保存着帮助 WordPress 连接数据库并平稳运行的关键设置。
这个文件不包含在默认的 WordPress 下载包中。它是在安装过程中当你输入数据库信息时自动创建的。

如果这个文件中的信息不正确,你的网站将无法连接到数据库。这时你可能会看到可怕的“建立数据库连接时出错”消息。
除了数据库信息,这个文件还可以包含调试、安全密钥、内存限制等设置。我们将在后面介绍这些内容。
大多数人不需要经常触碰这个文件。但了解它的工作原理以及如何安全编辑,能让你更好地控制自己的 WordPress 网站。
既然你来到这里,很可能已经准备好做出更改。我们将带你一步步安全地编辑这个文件,避免任何麻烦。
编辑前先备份
wp-config.php 控制着网站的关键部分,哪怕一个微小的错误(比如缺少分号或多余空格)都可能导致网站离线。因此,我们强烈建议在修改之前先做一次完整的 WordPress 备份。
备份能保护你的内容、设置和文件安全——如果出现问题,你可以轻松恢复。最推荐的方法是使用 Duplicator 插件。它只需几次点击就能备份网站。

注意:Duplicator 也有免费版。需要定时备份和云存储功能的话,建议使用付费计划。
为什么推荐 Duplicator? 因为我们在自己的网站上(包括猫哥)都使用它。它在安全性和稳定性方面表现出色。详情可查看完整的 Duplicator 评测。
如何安全地访问和编辑 wp-config.php 文件
第一步:通过 FTP 连接到你的网站
wp-config.php 文件位于你的 WordPress 主机服务器上,就在网站根目录中。你可以通过 FTP 客户端(如 FileZilla)或主机面板中的 File Manager 访问它。我们通常更推荐使用 FTP,控制更灵活。Windows 用户可以使用 FileZilla、WinSCP 或 SmartFTP;Mac 用户可以使用 FileZilla、Transmit 或 CyberDuck。
首先用 FTP 客户端连接到你的网站。你需要 FTP 登录信息,这些信息由你的主机提供商提供。如果不知道,可以联系主机支持团队。
第二步:下载并编辑文件
连接成功后,打开根目录。你会看到 wp-content、wp-includes、wp-admin 等文件夹——wp-config.php 就在这里。

右键点击文件,选择“下载”保存到本地电脑。然后用纯文本编辑器(如 Notepad 或 TextEdit)打开。我们一直在用这两种工具,简单编辑完全够用。
第三步:上传并覆盖
完成修改后,回到 FTP 客户端,将文件上传到服务器上相同的目录。FTP 客户端会询问是否覆盖,选择“覆盖”并确定即可。

理解 wp-config.php 文件
在开始之前,我们先看看默认的 wp-config.php 完整代码:
<?php
/**
* WordPress 基础配置
*
* 安装脚本会在安装过程中使用此文件。
* 你可以直接复制此文件为 wp-config.php 并填写值。
*
* 包含以下配置:
* * 数据库设置
* * 密钥
* * 数据库表前缀
* * ABSPATH
*
* @link https://developer.wordpress.org/advanced-administration/wordpress/wp-config/
* @package WordPress
*/
// ** 数据库设置 - 请从你的主机商获取这些信息 ** //
/** 数据库名称 */
define( 'DB_NAME', 'database_name_here' );
/** 数据库用户名 */
define( 'DB_USER', 'username_here' );
/** 数据库密码 */
define( 'DB_PASSWORD', 'password_here' );
/** 数据库主机 */
define( 'DB_HOST', 'localhost' );
/** 数据库字符集 */
define( 'DB_CHARSET', 'utf8' );
/** 数据库排序规则 */
define( 'DB_COLLATE', '' );
/**#@+
* 身份验证唯一密钥和盐值。
*
* 请修改为不同的唯一短语!你可以使用 WordPress.org 密钥生成服务生成。
* 任何时候都可以更改,使所有现有 cookie 失效,强制所有用户重新登录。
* @since 2.6.0
*/
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' );
/**#@-*/
/**
* WordPress 数据库表前缀。
* 如果在一个数据库中安装多个 WordPress,可以给每个网站设置唯一前缀。
* 只允许使用数字、字母和下划线。
*/
$table_prefix = 'wp_';
/**
* 开发者调试模式。
* 在开发环境中设置为 true 可显示通知。
* 强烈建议主题和插件开发者在开发环境使用 WP_DEBUG。
* 更多调试常量请参考文档。
*/
define( 'WP_DEBUG', false );
/* 在此行和“停止编辑”行之间添加任何自定义值。 */
/* 到此为止,停止编辑!祝你发布愉快。 */
/** WordPress 目录的绝对路径。 */
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', __DIR__ . '/' );
}
/** 设置 WordPress 变量和包含文件。 */
require_once ABSPATH . 'wp-settings.php';
文件中每个部分都有清晰的注释。几乎所有设置都使用 PHP 常量定义:define( 'CONSTANT_NAME', 'value' );
MySQL 设置
数据库连接设置位于“数据库设置”部分。你需要提供 MySQL 主机、数据库名称、用户名和密码。
// ** 数据库设置 - 请从你的主机商获取这些信息 ** //
define( 'DB_NAME', 'database_name_here' );
define( 'DB_USER', 'username_here' );
define( 'DB_PASSWORD', 'password_here' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8' );
define( 'DB_COLLATE', '' );
| 常量名 | 说明 |
|---|---|
| DB_NAME | WordPress 数据库名称 |
| DB_USER | 数据库用户名 |
| DB_PASSWORD | 数据库密码 |
| DB_HOST | 数据库主机(通常是 localhost) |
| DB_CHARSET | 数据库字符集(默认 utf8) |
| DB_COLLATE | 数据库排序规则(通常留空) |
要填写这些值,你需要从主机面板获取数据库信息。以 Bluehost 为例,登录后点击网站下的“Settings”,切换到 Advanced 选项卡,点击“Manage”进入 cPanel,找到“Databases”下的“MySQL Databases”,即可看到数据库列表、用户名和密码。如果找不到,请联系你的主机商。
DB_CHARSET 和 DB_COLLATE 是什么? DB_CHARSET 指定数据库表的字符集,默认是 utf8,但 WordPress 会在支持的服务器上自动升级为 utf8mb4(支持表情符号)。DB_COLLATE 定义排序和比较方式,建议留空,让 MySQL 使用默认排序规则。
身份验证唯一密钥和盐值
这些是安全特性,通过加强用户 cookie 的加密来保护你的网站。
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' );
| 常量名 | 说明 |
|---|---|
| AUTH_KEY | 验证 cookie 并确保数据完整性 |
| SECURE_AUTH_KEY | 在使用 SSL 时保护验证 cookie |
| LOGGED_IN_KEY | 验证登录 cookie |
| NONCE_KEY | 保护一次性随机数不被猜测 |
| AUTH_SALT | 为验证过程增加额外安全 |
| SECURE_AUTH_SALT | 为 SSL 验证过程增加额外安全 |
| LOGGED_IN_SALT | 为登录验证过程增加额外安全 |
| NONCE_SALT | 为一次性随机数创建和验证增加额外安全 |
你可以访问 WordPress.org 密钥生成器 生成新密钥。如果怀疑有人试图访问后台,也可以随时更改它们。更多信息请参考 WordPress 安全密钥 指南。
数据库表前缀
默认情况下,WordPress 使用 wp_ 前缀。建议在安装时改为随机前缀,以增加安全性,防止 SQL 注入攻击。
$table_prefix = 'wp_';
重要: 对于已有网站,不能直接修改这个值。要更改现有网站的前缀,请参考 如何更改 WordPress 数据库前缀 的教程。
调试模式
这个设置对学习 WordPress 开发或排查错误非常有用。默认情况下,WordPress 隐藏 PHP 通知。设置为 true 可以显示它们,帮助开发者定位 bug。
define( 'WP_DEBUG', false );
你还可以选择将错误记录到日志中。详细教程请参考 如何在 WordPress 中启用调试模式。
绝对路径设置
文件的最后部分定义了绝对路径,告诉 WordPress 在哪里找到核心文件,然后加载 wp-settings.php。
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', __DIR__ . '/' );
}
require_once ABSPATH . 'wp-settings.php';
这两个设置通常不需要修改。想了解 WordPress 如何加载文件,可以查看 WordPress 后台工作原理 的解释。
实用的 wp-config.php 技巧和设置
下面介绍一些可选但非常有用的设置,可以帮助你解决常见错误。
更改 MySQL 端口和套接字
如果你的主机商使用非标准端口,需要修改 DB_HOST 值,添加端口号:
define( 'DB_HOST', 'localhost:5067' );
如果使用套接字,则写成:
define( 'DB_HOST', 'localhost:/var/run/mysqld/mysqld.sock' );
使用 wp-config.php 更改 WordPress 网址
迁移网站到新域名时,你可能需要更改网址。虽然可以在后台设置中修改,但如果你无法访问后台(例如遇到“重定向过多”错误),可以通过添加以下两行代码来解决:
define('WP_HOME','http://example.com');
define('WP_SITEURL','http://example.com');
注意:www.example.com 和 example.com 被视为不同位置,请根据你的实际情况填写。
使用 wp-config.php 更改上传目录
默认上传目录是 /wp-content/uploads/。如果想存储到其他位置,可以添加:
define( 'UPLOADS', 'wp-content/media' );
注意:路径是相对于 ABSPATH 的,不要使用绝对路径。
禁用自动更新
WordPress 默认启用自动更新,当有安全更新时会自动安装。如果你担心自动更新导致网站出问题,可以添加以下代码禁用所有自动更新:
define( 'WP_AUTO_UPDATE_CORE', false );
更多信息请参考 如何禁用 WordPress 自动更新。
限制文章修订版本
WordPress 默认保存所有修订版本,可能占用大量数据库空间。你可以限制保留的修订版本数量:
define( 'WP_POST_REVISIONS', 3 );
将 3 替换为你希望保留的数量。注意,这只会限制新修订版本,旧版本仍然存在。你可以使用插件或 SQL 查询清除旧版本。
视频教程
想看更直观的演示?可以观看我们的 YouTube 视频教程:
别忘了 订阅猫哥的 YouTube 频道 获取更多 WordPress 视频教程。
常见问题
wp-config.php 文件在哪里?
它位于 WordPress 根目录(与 wp-admin、wp-content、wp-includes 同级的文件夹)。你可以通过 FTP 或主机面板的 File Manager 访问。
能否从 WordPress 后台编辑 wp-config.php?
不能。你必须使用 FTP 或主机面板的 File Manager 直接编辑服务器上的文件。
如果编辑出错会怎样?
哪怕一个微小的错误(如缺少分号)都可能导致整个网站离线。所以修改前一定要备份原始文件。
如何重置安全密钥和盐值?
访问 WordPress.org 密钥生成器 获取新密钥,替换 wp-config.php 中的对应值。这会使所有用户重新登录。
是否应该更改默认数据库前缀?
是的,在安装时改为随机前缀可以增加一层安全防护。但不要在已有网站上直接修改,需要按照正确指南操作,否则会破坏数据库连接。
下一步提升你的 WordPress 技能
现在你已经学会编辑 wp-config.php 了,也许还想了解其他优化技巧。我们为你整理了几个实用的教程:
- 如何在 wp-config 中设置 WordPress 错误日志
- 最受欢迎的 WordPress 技巧、窍门和黑客
- 最实用的 .htaccess 技巧
- 最省时的 WordPress 键盘快捷键
如果你喜欢这篇文章,请订阅我们的 YouTube 频道,或在 Twitter 和 Facebook 上关注我们。另外,如果你在寻找可靠的主机服务,推荐你试试 Hostinger 主机,性价比高且速度优秀。关于 SEO 优化方面,可以了解 GEO 搜索引擎优化技巧。
