WordPress 管理员可以轻松管理配置,而无需触及一行代码。然后将这些基本配置设置存储在wp-options
数据库内的表中。但是,WordPress 也有一个单独的配置文件,称为wp-config.php
,可用于进一步定制。
wp-config 是安装自托管 WordPress 站点时保存自定义托管数据(数据库名称、数据库主机等)的文件。您还可以向此文件添加其他配置选项,您可以使用这些选项启用或禁用调试、缓存、多站点、SSL 登录、自动更新等功能。
另请阅读: 15 个对您的 WordPress 网站有用的 .htaccess 片段
本地化和编辑 wp-config
当您下载 WordPress 时,该wp-config.php
文件还不存在于安装文件夹中。但是,有一个名为的文件wp-config-sample.php
需要复制并重命名为wp-config.php
. 然后,您需要将基本连接数据(数据库名称、数据库用户名、数据库密码、主机名、安全密钥)添加到此文件。
如果您的托管服务提供商使用Softaculous 自动安装程序(大多数都是这样做的),这个过程会自动为您完成,当您通过 FTP 连接服务器时,您会在根文件夹中找到一个wp-config.php
和一个文件。wp-config-sample.php
请注意设置的顺序很重要,所以不要重新排列它们。编辑 wp-config 文件时,请始终使用代码编辑器,例如 Sublime Text、Atom、Notepad++、Visual Studio Code 或 TextMate。文字处理器(Microsoft Office、Google Docs、LibreOffice 等)会弄乱您的文件,切勿使用它们来编辑代码文件。
保存到 wp-config 中的设置会覆盖数据库,以防两者存在相同类型的配置(例如主页 URL)
在哪里放置代码片段
在本文中,您可以找到20 个代码片段,您可以使用它们来自定义您的wp-config.php
文件。
默认情况下,wp-config 中不存在大多数这些配置选项。如果您想使用它们,您需要将它们添加到起始<?php
标记和代码注释下方,但在 MySQL 设置上方。
1.开启WP调试器
您可以在 wp-config 文件中打开和关闭 WordPress 调试器。默认情况下,下面的第一个片段确实存在于 wp-config 中(在数据库配置下方),但其值设置为false
. 要打开调试器,请将其值更改为true
。
第二个代码片段打开前端调试器,允许您调试 CSS 和 JavaScript 脚本。仅在从未在生产中使用的开发站点上使用调试器。
1个
2个
3个
4个
5个
|
# Turns on PHP debugger define( 'WP_DEBUG' , true ); # Turns on CSS and JavaScript debugger define( 'SCRIPT_DEBUG' , true ); |
2.更改数据库表前缀
wp_
WordPress默认使用表前缀。如果你想要一个更安全的数据库,你可以选择一个更复杂的表前缀。
wp-config文件中默认也有这个配置选项,你只需要将变量的值改成$table_prefix
更安全的值即可。
只有在全新安装或在开发站点上更改表前缀,因为在生产站点上这样做是有风险的。
1个
2个
3个
|
# Creates secure table prefix for database tables # Only numbers, letters, underscores $table_prefix = 'a81kJt_' ; |
3. 更改 WordPress 网址
您可以在菜单下的 WordPress 管理员中设置 WordPress 和主页 URLSettings > General
。但是,您也可以在 wp-config 文件中配置这些 URL。
在 wp-config 文件中定义WP_SITEURL
和常量有两个好处:WP_HOME
- 如果您由于某种原因无法访问您的管理区域,它可以挽救生命
- 它可以减少网站加载时数据库调用的次数(因为 wp-config 会覆盖保存在数据库中的选项)
WP_SITEURL
指定用户可以访问您网站的URL ,同时WP_HOME
定义WP 安装的根目录。如果您将 WordPress 安装到您的根文件夹中(这是默认选项),它们将采用相同的值。
1个
2个
3个
4个
5个
|
# Specifies site URL define( 'WP_SITEURL' , 'http://www.yourwebsite.com' ); # Specifies home URL (the root of the WP install) define( 'WP_HOME' , 'http://www.yourwebsite.com/wordpress' ); |
4.一定时间后清空垃圾箱
您可以让 WordPress在一定数量的日期后自动清空垃圾箱。该常量的最小值为 0,在这种情况下您禁用了垃圾桶功能。
1个
2个
|
# Empties trash after 7 days define( 'EMPTY_TRASH_DAYS' , 7 ); |
5.启用WordPress缓存
您可以使用以下代码行启用 WordPress 的内置缓存功能。大多数缓存插件,例如W3 Total Cache和WP Super Cache,都会自动将此片段添加到 wp-config 文件中。
1个
2个
|
# Enables WP cache define( 'WP_CACHE' , true ); |
6. 启用 WordPress 多站点
通过将常量添加WP_ALLOW_MULTISITE
到您的 wp-config 文件,您可以启用 WordPress 的多站点功能,该功能允许您创建WP 站点网络。
1个
2个
|
# Turns on WordPress Multisite define( 'WP_ALLOW_MULTISITE' , true ); |
7.重定向不存在的子域和子文件夹
有时,访问者会在 URL 栏中键入不存在的子域或子文件夹。您可以将这些用户重定向到您域中的另一个页面,例如在常量的帮助下重定向到主页NOBLOGREDIRECT
。
1个
2个
|
# Redirects non-existing subdomains and subfolders to homepage define( 'NOBLOGREDIRECT' , 'http://www.yourwebsite.com' ); |
8.管理后期修订
WordPress 有一个内置的版本控制系统,这意味着它会保存您创建的所有后期修订。经常编辑的帖子可能有多达 25-30 次修订,一段时间后会占用大量数据库空间。
使用WP_POST_REVISIONS
常量,您可以最大化后期修订的数量或完全禁用该功能。
1个
2个
3个
4个
5个
|
# Completely disables post revisions define( 'WP_POST_REVISIONS' , false ); # Allows maximum 5 post revisions define( 'WP_POST_REVISIONS' , 5 ); |
9.启用内置数据库优化
WordPress 有一个内置的数据库优化功能,您可以通过将以下行添加到 wp-config 文件来打开它。
我在这篇文章中详细描述了这个工具是如何工作的。需要注意的最重要的事情是数据库优化屏幕对任何人(即使是未登录的访问者)都可用。仅在您要运行优化工具的时间段启用该功能,然后不要忘记禁用它。
1个
2个
|
# Turns on database optimization feature define( 'WP_ALLOW_REPAIR' , true ); |
10.禁用自动更新
WordPress默认为次要版本和翻译文件运行自动后台更新。
您可以根据以下规则设置(对于所有更新)和(对于核心更新)常量的值来打开和关闭此功能:AUTOMATIC_UPDATER_DISABLED
WP_AUTO_UPDATE_CORE
1个
2个
3个
4个
5个
6个
7
8个
9
10
11
|
# Disables all automatic updates define( 'AUTOMATIC_UPDATER_DISABLED' , true ); # Disables all core updates define( 'WP_AUTO_UPDATE_CORE' , false ); # Enables all core updates, including minor and major releases define( 'WP_AUTO_UPDATE_CORE' , true ); # Enables core updates only for minor releases (default) define( 'WP_AUTO_UPDATE_CORE' , 'minor' ); |
11.增加PHP内存限制
有时您可能想增加托管服务提供商分配给您网站的PHP 内存限制,尤其是当您收到可怕的“允许的 xxxxxx 字节的内存大小已耗尽”消息时。为此,请使用WP_MEMORY_LIMIT
网站和WP_MAX_MEMORY_LIMIT
管理区域。
请注意,某些主机不允许手动增加内存限制,在这种情况下请联系他们并让他们为您完成。
1个
2个
3个
4个
5个
|
# Sets memory limit for the website define( 'WP_MEMORY_LIMIT' , '96M' ); # Sets memory limit for the admin area define( 'WP_MAX_MEMORY_LIMIT' , '128M' ); |
12.强制SSL登录
为了提高网站安全性,您可以强制用户每次都通过SSL登录。该FORCE_SSL_ADMIN
常量使用户登录和管理会话都必须使用 SSL 。
请注意,以前有效的FORCE_SSL_LOGIN
常量在 WordPress 4.0 中已弃用,因此现在您始终必须使用FORCE_SSL_ADMIN
.
1个
2个
|
# Forces SSL login define( 'FORCE_SSL_ADMIN' , true ); |
13.禁用插件和主题编辑/更新
管理员可以在 WordPress 管理区域编辑插件和主题文件。如果您使用常量禁用插件和主题编辑器,您可以使您的网站更安全DISALLOW_FILE_EDIT
。因此,如果您的网站遭到黑客攻击,黑客将无法访问您的插件和主题文件。
您还可以使用禁用插件和主题更新功能DISALLOW_FILE_MODS
。这样管理员将无法在管理区域更新插件和主题。
DISALLOW_FILE_MODS
还会禁用插件和主题编辑器,因此如果您使用它,则不必添加DISALLOW_FILE_EDIT
。
1个
2个
3个
4个
5个
|
# Disables the plugin and theme editor define( 'DISALLOW_FILE_EDIT' , true ); # Disables the plugin & theme editor PLUS the plugin & theme update define( 'DISALLOW_FILE_MODS' , true ); |
14.删除图像编辑
每当您编辑图像时,WordPress都会以不同的分辨率保存它。但是,如果您不想使用较早的图像集,您可以通过将常量的值设置为 来删除它们。IMAGE_EDIT_OVERWRITE
true
因此,当您编辑图像时,较早的图像文件将被新图像文件覆盖,并且只有最后一组会保存在wp-content
文件夹中。
1个
2个
|
# Cleans up image edits define( 'IMAGE_EDIT_OVERWRITE' , true ); |
15. 禁用未过滤的 HTML
虽然低级别用户(订阅者、贡献者、作者)不能在 WordPress 中发布未经过滤的 HTML,但允许编辑和管理员这样做。
通过将以下代码行添加到您的 wp-config 文件,您可以通过防止高级用户发布未经过滤的 HTML来提高安全性。
1个
2个
|
# Disables unfiltered HTML for admins and editors define( 'DISALLOW_UNFILTERED_HTML' , true ); |