我根据Codex 中的说明在wp-config.php 中设置调试参数:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
/wp-content/debug.log
在这种情况下,不会创建日志文件,在任何文件权限设置下都不会输出到手动创建的文件。
服务器上启用了 php-fpm,也许这就是问题所在?
我根据Codex 中的说明在wp-config.php 中设置调试参数:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
/wp-content/debug.log
在这种情况下,不会创建日志文件,在任何文件权限设置下都不会输出到手动创建的文件。
服务器上启用了 php-fpm,也许这就是问题所在?
原因
是的,问题出在 php-fpm 上。当您指定时 WordPress 会做什么
在
wp-config.php
?代码wp-includes/load.php
很简单我们只关心一行
这是 WordPress 尝试为日志文件设置新路径的地方,即
wp-content/debug.log
. 但是当启用 php-fpm 时,这个函数返回 false 并且不起作用。为什么?因为在文件中的服务器上
/etc/php-fpm.d/www.conf
(在最后)它是默认设置的:这些参数不能被调用覆盖
ini_set()
,因此无法输出错误日志wp-content/debug.log
。TLDR(决定)
您需要在文件中注释掉服务器上的以下行
/etc/php-fpm.d/www.conf
并重新启动 php-fpm
之后,将成功创建日志文件,并将错误日志写入
wp-content/debug.log
.