编辑wp-config.php
主题
- 配置数据库设置
-
高级选项
- table_prefix
- WP_SITEURL
- 博客地址(URL)
- 移动wp-content文件夹
- 移动的插件文件夹
- 动主题文件夹
- 移动上传文件夹
- 修改自动保存时间间隔
- 文章修改
- 禁用后的修正
- 指定发布修订的数量
- 设置Cookie域
- 启用多站点/网络能力
- 重定向不存在的博客
- WP_DISABLE_FATAL_ERROR_HANDLER
- WP_DEBUG
- WP_ENVIRONMENT_TYPE
- SCRIPT_DEBUG
- 禁用Javascript连接
- 配置错误日志
- 增加内存分配给PHP
- 缓存
- 自定义用户和Usermeta表
- 语言和语言目录
- 保存查询分析
- 覆盖默认的文件的权限
- WordPress升级常量
- 替代Cron
- 禁用Cron和Cron超时
- 额外的定义常量
- 空垃圾
- 自动数据库优化
- DO_NOT_UPGRADE_GLOBAL_TABLES
- 查看所有已定义的常量
- 禁用插件和主题文件编辑器
- 禁用插件和主题更新和安装
- 需要SSL管理和登录
- 块外部URL请求
- WordPress禁用自动更新
- 禁用WordPress核心更新
- 清除图像编辑
- 在保存前仔细检查
最重要的一个文件在你的WordPress安装wp-config.php
文件。 这个文件位于你的WordPress文件的根目录,包含您的网站的基本配置细节,如数据库连接信息。
当你第一次下载WordPresswp-config.php
文件不包括在内。 WordPress安装过程中会创建一个 wp-config.php
根据您提供的信息为您的文件。
您可以手动创建一个wp-config.php
定位文件的示例文件命名wp-config-sample.php
(位于根安装目录),根据需要编辑它,然后保存它wp-config.php
.
注意:的内容wp-config-sample.php
文件是一个特定的顺序。 顺序很重要。 如果你已经有一个wp-config.php
文件,重新排列文件的内容可能会产生错误在你的博客上。
改变wp-config.php
申请安装,你需要这个信息:
- 数据库名称WordPress使用的数据库名称
- 数据库用户名——用户名用于访问数据库
- 数据库密码——密码所使用的用户名来访问数据库
- 数据库主机——您的数据库服务器的主机名。 一个端口号,Unix socket文件路径或管道可能需要。
如果您托管服务供应商安装WordPress,从他们那里得到信息。 如果你管理你自己的web服务器或托管帐户,你将这些信息的结果创建数据库和用户.
配置数据库设置
重要的是: 从来没有使用文字处理器像Microsoft word编辑WordPress文件!
找到该文件wp-config-sample.php
在你的WordPress的基本目录目录并打开一个文本编辑器.
默认wp-config-sample.php
注意:这是一个默认的一个例子wp-config-sample.php。 值以下是示例向您展示了该做什么。
/ / * * MySQL设置——你可以得到这个信息从你的网络主机* * / / / * *为WordPress数据库的名称* / 定义(“DB_NAME”、“database_name_here”); / * * MySQL数据库用户名* / 定义(“DB_USER”、“username_here”); / * * * / MySQL数据库密码 定义(“DB_PASSWORD”、“password_here”); / * * MySQL主机名* / 定义(“DB_HOST”、“localhost”);
注意:文本/ * * /评论,仅供参考。
设置数据库名称
“database_name_here”,替换为您的数据库的名称,例如:MyDatabaseName.
定义(“DB_NAME”、“MyDatabaseName”); / /示例MySQL数据库的名字
设置数据库用户
“username_here”,换成你的用户名如的名字。MyUserName.
定义(“DB_USER”、“上的用户名都”dangillmor); / /示例MySQL用户名
设置数据库密码
“password_here”,替换为您的密码,如我的密码.
定义(“DB_PASSWORD”、“我的密码”); / /示例MySQL密码
设置数据库主机
“localhost”,替换为您的数据库主机的名称,例如:MyDatabaseHost。 端口号或Unix套接字文件路径可能需要。
定义(“DB_HOST”、“MyDatabaseHost”); / /示例MySQL数据库主机
注意:很有可能你会的不必须改变它。 如果你不确定,试着安装的默认值“localhost”,看看它的工作原理。 如果安装失败,请联系您的虚拟主机提供商。
MYSQL备用端口
如果你的主机使用另一个端口号码数据库需要改变DB_HOST的价值wp-config.php
文件,以反映您的主机提供的备用端口。
主机:
定义(“DB_HOST”、“127.0.0.1:3307年);
或者在某些情况下:
定义(“DB_HOST”、“localhost:3307年);
为指定的服务器:
定义(“DB_HOST”、“mysql.example.com:3307年);
取代3307无论你的主机给你端口号。
MYSQL套接字或管道
如果您的主机使用Unix socket或管道、调整DB_HOST的价值wp-config.php
相应的文件。
定义(“DB_HOST”、“127.0.0.1:/var/run/mysqld/mysqld.sock”); / /定义(“DB_HOST”、“localhost:/var/run/mysqld/mysqld.sock”); / /定义(“DB_HOST”、“example.tld:/var/run/mysqld/mysqld.sock”);
取代 /var/run/mysqld/mysqld.sock
与套接字或管您的主机提供的信息。
可能DB_HOST值
不同的主机公司使用不同的网络设置mysql数据库。 如果你的托管公司下面列出在左栏,右边的值DB_HOST类似于正确的值。 联系你的技术支持和/或搜索你的托管公司在线文档。
托管公司 | DB_HOST价值猜 |
---|---|
1把 | db12345678 |
A2托管 | 本地主机 |
一个主机 | 本地主机 |
Aruba.it | localhost或真实IP提供激活邮件。 |
一个小橘子 | 本地主机 |
美国电话电报公司(AT&T) | 在PHP MyAdmin发现xxxxxxxx.carrierzone.com完整的服务器名称。 |
BlueHost | 本地主机 |
DreamHost | mysql.example.com |
GoDaddy——共享和4 gh托管 | 在菜单去MySQL数据库。 右边的数据库名称点击动作和细节。 主机名是在窗口的底部。 |
GoDaddy的cPanel主机 | 本地主机 |
GoDaddy——Plesk主机 | 使用IP地址在Plesk数据库部分所示。 不包括:3306 |
HostGator | 本地主机 |
ICDSoft | localhost: / tmp / mysql5.sock |
Infomaniak网络 | mysql.yourdomain |
InMotion托管 | 本地主机 |
iPage | username.ipagemysql.com |
IPower | username.ipowermysql.com |
笑鱿鱼 | 本地主机 |
MediaTemple网格 | internal-db.s00000.gridserver.com网站(“00000”替换为实际的数字) |
MediaTemple DV | 本地主机 |
MegaHost | 本地主机 |
NearlyFreeSpeech.Net | username.db |
NetworkSolutions | mysqlv5 |
one.com | example.com.mysql |
对网络 | dbnnnx.pair.com |
QTH.com | 本地主机 |
Rackspace的云 | 为云主机对于非托管服务器,变量等网站mysqlXY-AB.wcN.dfQ.stabletransit.com X, Y, A, B, N,问是变量 |
SysFix。 欧盟的能源托管 | datapower.sysfix.eu |
Site5 | 本地主机 |
雅虎 | mysql |
与cPanel主机 | 本地主机 |
与Plesk主机 | 本地主机 |
主机与DirectAdmin | 本地主机 |
Tophost.it | sql.your-domain-name.it |
数据库字符集
DB_CHARSET还允许指定的数据库字符集(如tis620 tis620泰国)在定义使用MySQL数据库表。
的默认值use utf8(Unicode utf - 8)几乎总是最好的选择。 utf - 8支持任何语言,所以你通常想离开DB_CHARSETuse utf8并使用DB_COLLATE值你的语言。
这个例子展示了utf8被认为是WordPress的默认值:
定义(“DB_CHARSET”、“use utf8”);
通常应该没有理由改变DB_CHARSET的默认值。 如果你的博客需要不同的字符集,请阅读MySQL支持的字符集和排序为有效DB_CHARSET值。警告:那些执行升级。
如果DB_CHARSET DB_COLLATE并不存在于你wp-config.php
文件,不添加定义你wp-config.php
文件,除非你阅读和理解转换数据库字符集。 添加DB_CHARSET和DB_COLLATEwp-config.php
文件,为现有的博客,会导致大问题。
数据库排序规则
DB_COLLATE还允许指定的数据库排序(即字符集的排序顺序)。 在大多数情况下,这个值是留空(null)所以MySQL数据库排序规则将被自动分配基于DB_CHARSET指定的数据库字符集。 一个例子,当你可能需要设置“DB_COLLATE”中定义的utf - 8的价值观之一utf - 8字符集对大多数西方欧洲语言就是一种不同的语言输入的字符不一样显示。 (见也Unicode字符集在SQL手动)
WordPress默认DB_COLLATE值:
定义(‘DB_COLLATE’,”);
utf - 8的Unicode通用排序
定义(“DB_COLLATE”、“utf8_general_ci”);
utf - 8的Unicode土耳其排序
定义(“DB_COLLATE”、“utf8_turkish_ci”);
通常应该没有理由改变DB_COLLATE的默认值。 离开空(null)将确保排序的值时自动分配到MySQL数据库表创建。警告:那些执行升级
如果DB_COLLATE DB_CHARSET并不存在于你wp-config.php
文件,不添加定义你wp-config.php
文件,除非你阅读和理解转换数据库字符集。 你可能需要一个WordPress升级。
安全密钥
你不需要记得的钥匙,只是让他们长,随机的和复杂的,或者更好的是,使用在线发电机。 你可以在任何时候改变这些无效所有现有的饼干。 这意味着所有用户将不得不重新登录。
例子(不要使用这些!):
定义(“AUTH_KEY”、“t 'DK % X: > xy |简易(BXb / f (Ur 8 # ~ UzUQG - ^ _Cs_GHs5U -&Wb吗? pgn ^ p8 (2 @} IcnCa |”); 定义(“SECURE_AUTH_KEY”、“D&ovlU # | CvJ # # uNq}贝尔+ ^ MFtT&.b9{紫外线辐射)g % ixsXhGlRJ7q ! h} XWdEC [BOKXssj '); 定义(“LOGGED_IN_KEY”、“MGKi8Br (& {H * ~四维;{k0 < S (O: + f# WM + q | npJ - + P; RDKT: ~ jrmgj # / -, [hOBk ! ry ^ '); 定义(“NONCE_KEY”、“FIsAsXJKL5ZlQo) iD-pt ? ? eUbdc {_Cn < 4 ! ~ yqz)与b d ? AwK %) +) F2aNwI | siOe”); 定义(“AUTH_SALT”、“7 t - ! ^我! 0 w) L # JK@pc2 {8 xe [DenYI ^ BVf {jvF,高频}zBf883td6D; Vcy8,年代)- g); 定义(“SECURE_AUTH_SALT”、“I6'V | mDZq21-J |水生生物研究所u ^ q0F} F_NUcy孩子,= # Ybe4a31R obGtq * p, n r = | # = @] c# '); 定义(“LOGGED_IN_SALT”、“w < 4美元加元Hmd % / *]“伯父> (hdXW | 0 m = X = {we6; Mpvtg + V。 o < $ | # _}路上(GaVDEsn ~ * 4我'); 定义(“NONCE_SALT”、“| # h {c5 | P &xWs4IZ20c2& % 4 ! c (/ uG} W: mAvy < I44'jAbup] t =] V <}。 py (wTP % % ');
一个秘密密钥使你的网站很难成功地攻击将随机元素添加到密码。
简而言之,一个密钥密码与元素,很难产生足够的选项来突破安全壁垒。 密码,如“密码”或“测试”很简单,容易破碎。 一个随机,长密码使用没有字典里的单词,如“88”a7da62429ba6ad3cb3c76a09641fc需要蛮力攻击者数百万小时的裂缝。 一个“盐用于进一步加强安全生成的结果。
所需的四个键是增强安全性。 四个盐是推荐,但不是必需的,因为WordPress将为您生成盐如果没有被提供。 他们都包含在wp-config.php
在默认情况下为包容。
更多信息技术背景和故障的密钥和安全密码,见:
- 瑞安博伦- SSL和饼干在WordPress 2.6
- 维基百科的解释的密码破解
- Lorelle VanFossen——保护你的博客有一个坚实的密码
- Instructables——安全密码提示
- 赫芬顿邮报- 17提示今天能做的来保护你的网络密码
高级选项
以下部分可能包含先进信息和一些变化可能导致不可预见的问题。 请确保你的实践定期备份并且知道如何恢复之前修改这些设置。
table_prefix
的table_prefix美元的价值放在前面是你的数据库表。 改变如果你想使用价值以外的东西wp_对于您的数据库前缀。 通常这是如果你改变安装多个WordPress博客在同一个数据库中,完成了多站点功能。
可以有多个安装在一个数据库中如果你给每一个独特的前缀。 牢记安全如果你选择这样做。
美元table_prefix =“r235_”; / /只有数字,字母,下划线!
WP_SITEURL
WP_SITEURL允许将WordPress地址(URL)的定义。 定义的值就是你的WordPress核心文件的地址。 它应该包括http://
部分。 不要把一个斜杠”/”。 设置这个值在wp-config.php
覆盖了wp_options表值siteurl。 添加在装船时可以减少数据库调用的数量你的网站。注意:这将不修改数据库存储值。 URL将恢复旧的数据库值是否曾经从这条线wp-config
.使用搬迁常数改变siteurl值在数据库中。
如果WordPress安装到一个目录称为“WordPress”域example.com WP_SITEURL定义是这样的:
定义(' WP_SITEURL ', ' http://example.com/wordpress ');
动态设置WP_SITEURL基于$ _SERVER (“HTTP_HOST”)
定义(“WP_SITEURL”、“http://”。 $ _SERVER [' HTTP_HOST ']。 /路径/ / wordpress);
注意:HTTP_HOST由PHP动态创建基于HTTP请求中主机头的值,因此可能允许文件包含漏洞。 SERVER_NAME也可以动态创建。 然而,当Apache配置为UseCanonicalName“上”,SERVER_NAME设置的服务器配置,而不是动态的。 在这种情况下,用户比HTTP_HOST SERVER_NAME更安全。
动态设置WP_SITEURL基于$ _SERVER (“SERVER_NAME”)
定义(“WP_SITEURL”、“http://”。 $ _SERVER [' SERVER_NAME ']。 /路径/ / wordpress);
博客地址(URL)
类似于WP_SITEURL WP_HOME覆盖了wp_options表值家但不改变它在数据库中。 家地址你想要人们输入浏览器到达你的WordPress博客。 它应该包括http://
部分,不应该削减”/”。 添加在装船时可以减少数据库调用的数量你的网站。
定义(' WP_HOME ', ' http://example.com/wordpress ');
如果您正在使用中描述的技术WordPress提供其自己的目录中然后按照下面的例子。 记住,你也会放置一个index.php
在您的web根目录,如果你使用这样的设置。
定义(' WP_HOME ', ' http://example.com ');
动态设置WP_HOME基于$ _SERVER (“HTTP_HOST”)
定义(“WP_HOME”、“http://”。 $ _SERVER [' HTTP_HOST ']。 /路径/ / wordpress);
移动wp-content文件夹
你可以移动的wp-content
目录,其中包含你的主题、插件和上传,WordPress之外的应用程序目录。
设置WP_CONTENT_DIR本地路径这个目录的(没有使用斜杠),例如:
定义(“WP_CONTENT_DIR”,目录名(__FILE__)。 ' /博客/ wp-content ');
设置WP_CONTENT_URLURL这个目录的(没有使用斜杠),例如:
定义(' WP_CONTENT_URL ', ' http://example/blog/wp-content ');
移动的插件文件夹
设置WP_PLUGIN_DIR本地路径这个目录的(没有使用斜杠),例如:
定义(“WP_PLUGIN_DIR”,目录名(__FILE__)。 “/博客/ wp-content /插件”);
设置WP_PLUGIN_URLURI这个目录的(没有使用斜杠),例如:
定义(' WP_PLUGIN_URL ', ' http://example/blog/wp-content/plugins ');
如果你有插件设置PLUGINDIR compability问题本地路径这个目录的(没有使用斜杠),例如:
定义(“PLUGINDIR”,目录名(__FILE__)。 “/博客/ wp-content /插件”);
动主题文件夹
你不能移动主题文件夹,因为它的路径是相对于硬编码的wp-content
文件夹:
theme_root = WP_CONTENT_DIR美元。 ' /主题';
然而,您可以注册使用额外的主题目录register_theme_directory.
看到如何移动wp-content文件夹中。 更多细节如何确定主题文件夹,看到的wp-includes/theme.php
.
移动上传文件夹
设置上传:
定义(“上传”、“博客/ wp-content /上传”);
这条路不能绝对。 总是相对于ABSPATH,因此不需要削减。
修改自动保存时间间隔
编辑一篇文章时,WordPress使用Ajax自动保存修改编辑职务。 你可能想要增加此设置自动保存之间的时间延迟,或减少设置,以确保你永远不会失去的变化。 默认值为60秒。
定义(AUTOSAVE_INTERVAL, 160); / /秒
文章修改
WordPress,默认情况下,将保存的副本每个编辑一篇文章或页面,允许的可能性恢复到前一个版本的发布或页面。 修正的储蓄可以被禁用,或者修正的最大数量可以指定每个文章或者网页。
禁用后的修正
如果你做不设置这个值,WordPress默认WP_POST_REVISIONS真正的(启用后修改)。 如果你想禁用的修正功能,使用该设置:
定义(“WP_POST_REVISIONS”,假);
注意:一些用户无法得到这个函数直到命令转移到第一行根据初始块注释wp-config.php
.
指定发布修订的数量
如果你想指定一个最大数量的修改WordPress商店,改变假一个整数/号码(如。,3 - 12)。
定义(“WP_POST_REVISIONS”, 3);
注意:一些用户无法得到这个函数直到命令转移到第一行根据初始块注释wp-config.php
.
设置Cookie域
域设置cookie的WordPress可以为那些不寻常的指定域设置。 例如,如果子域是用来服务静态内容,您可以设置cookie域只有你的非静态域防止WordPress饼干与每个请求发送静态内容的子域名。
定义(' COOKIE_DOMAIN ', ' www.example.com ');
启用多站点/网络能力
WP_ALLOW_MULTISITE功能支持多站点功能。 如果这个设置是缺席wp-config.php
默认值为false。
定义(“WP_ALLOW_MULTISITE”,真正的);
重定向不存在的博客
NOBLOGREDIRECT可用于重定向浏览器如果访问者试图访问一个不存在的子域或一个子文件夹。
定义(' NOBLOGREDIRECT ', ' http://example.com ');
WP_DISABLE_FATAL_ERROR_HANDLER
WordPress 5.2引入恢复模式时显示错误消息,而不是白色屏幕插件会导致致命错误。
网站正在经历技术上的困难。 请检查你的网站管理收件箱指令。
白色的屏幕和PHP错误消息不显示给用户。 但是在开发环境中,如果你想使WP_DEBUG_DISPLAY,你必须禁用设置真实WP_DISABLE_FATAL_ERROR_HANDLER恢复模式。
定义(“WP_DISABLE_FATAL_ERROR_HANDLER”,真正的); / / 5.2,后来定义(“WP_DEBUG”,真正的); 定义(“WP_DEBUG_DISPLAY”,真正的);
WP_DEBUG
的WP_DEBUG选择控制报告的一些错误和警告,使使用WP_DEBUG_DISPLAY和WP_DEBUG_LOG设置。 默认的布尔值是错误的。
定义(“WP_DISABLE_FATAL_ERROR_HANDLER”,真正的); / / 5.2和以后 定义(“WP_DEBUG”,真正的);
数据库错误打印只有WP_DEBUG被设置为true。 数据库错误处理wpdb类和不受影响PHP的错误设置.
将WP_DEBUG设置为true也提高了错误报告级别E_ALL,激活时弃用功能的警告或使用文件; 否则,WordPress错误报告级别设置为E_ALL ^ E_NOTICE ^ E_USER_NOTICE。
WP_ENVIRONMENT_TYPE
WP_ENVIRONMENT_TYPE选项控制站点的环境类型:local
,development
,staging
,production
.
环境类型的值按照以下顺序处理每个序贯法覆盖任何以前的价值观:WP_ENVIRONMENT_TYPEPHP环境变量和WP_ENVIRONMENT_TYPE常数。
两种方法,如果提供一个环境类型的值不允许环境类型的列表中,默认值production
值将被返回。
最简单的方法设置值可能是通过定义常数:
define( 'WP_ENVIRONMENT_TYPE', 'staging' );
注意:当development
返回的是wp_get_environment_type (),WP_DEBUG将被设置为true
如果没有定义的wp-config.php
文件的网站。
SCRIPT_DEBUG
SCRIPT_DEBUG是一个相关的常数,将迫使WordPress使用脚本和样式表的“dev版本”wp-includes/js
,wp-includes/css
,wp-admin/js
,wp-admin/css
将加载的.min.css
和.min.js
版本. . 如果你正计划修改WordPress的内置JavaScript或层叠样式表时,您应该将下面的代码添加到您的配置文件:
定义(“SCRIPT_DEBUG”,真正的);
禁用Javascript连接
导致更快的管理屏幕,所有JavaScript文件连接到一个URL。 如果JavaScript未能工作管理屏幕,你可以尝试禁用这个特性:
定义(“CONCATENATE_SCRIPTS”,假);
配置错误日志
配置错误日志可以有点棘手。 首先,默认PHP错误日志和显示设置中设置PHP。 ini文件,您可能有也可能没有访问权。 如果你这样做,他们应该设置为所需的设置PHP页面提供给公众。 这是强烈建议不显示错误消息向公众,而路由到一个错误日志。 此外,错误日志不应位于公开访问您的服务器的一部分。 推荐php示例。 ini错误设置:
error_reporting = 4339 display_errors =了 display_startup_errors =了 log_errors =对 error_log = /home/example.com/logs/php_error.log log_errors_max_len = 1024 ignore_repeated_errors =对 ignore_repeated_source =了 html_errors =了
4339错误报告这是一个自定义的值,只有日志的问题影响你的网站的功能,而忽略诸如注意到甚至可能不是错误。 看到PHP误差常数为1000011110011,每个二进制位置的意义是二进制数等于4339。 最左边1报告任何E_RECOVERABLE_ERROR手段。 下一个0表示不报告代码,(这是草率的但是功能强大的代码使用时)等等。 随意决定使用自己的自定义错误报告号码4339。
显然,您将为您的开发环境需要不同的设置。 如果你的临时复制是在同一台服务器上,或你没有访问权php.ini
,你会在运行时需要覆盖默认设置。 这是一个个人喜好的问题你是否喜欢去一个日志文件错误,或者你更喜欢立即通知的任何错误,或者两者兼而有之。 这里有一个例子,立即报告所有的错误,你可以插入到你的wp-config.php
文件:
@ini_set (“log_errors”、“关闭”); @ini_set (‘display_errors’,‘上’); 定义(“WP_DISABLE_FATAL_ERROR_HANDLER”,真正的); / / 5.2和以后 定义(“WP_DEBUG”,真正的); 定义(“WP_DEBUG_LOG”,假); 定义(“WP_DEBUG_DISPLAY”,真正的);
因为wp-config.php
加载每一页视图不是从缓存加载文件,它是一个很好的位置设置php.ini
设置控制PHP安装。 这是有用的如果你没有访问php.ini
文件,或者如果你只是想改变一些设置。 一个例外是“error_reporting”。 当WP_DEBUG的定义是正确的,“error_reporting”将被设置为E_ALL WordPress无论任何你想wp-config.php。 如果你真的需要的error_reporting设置为别的东西,它必须做的wp-settings.php
加载,比如在一个插件文件。
如果你打开错误日志,记得删除文件之后,因为它通常会在一个公共可访问的位置,任何人都可以获得您的日志。
这是一个例子,PHP error_logging和日志他们到一个特定的文件。 如果WP_DEBUG定义是正确的,错误也会保存到该文件。 只是这上面任何的地方require_once或包括命令。
@ini_set (‘log_errors’,‘上’); @ini_set (“display_errors”、“关闭”); @ini_set (“error_log”、“/ home /example.com/logs/php_error.log'); / *这是所有,停止编辑! 快乐的博客。 * /
记录错误的另一个例子,建议由迈克小wp-hackers邮件列表:
/ * * *这将所有错误和警告通知记录到一个文件叫做调试。 登录 * wp-content(如果Apache没有写权限,您可能需要创建 *文件,设置适当的权限(即使用666)) * / 定义(“WP_DEBUG”,真正的); 定义(“WP_DEBUG_LOG”,真正的); 定义(“WP_DEBUG_DISPLAY”,假); @ini_set (display_errors, 0);
从迈克的小的改进版本曼彻斯特WordPress用户组:
/ * *