我正在使用 php-fpm 和 php 5.3.3 运行 nginx。我的 php.ini 配置中有
error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
这应该可以关闭错误日志中的所有 php 警告,但我仍然收到这些警告。我该如何摆脱它们?
答案1
我相信您需要修改池并添加以下内容:
php_admin_value[error_reporting] = E_ALL & ~E_NOTICE & ~E_WARNING & ~E_STRICT & ~E_DEPRECATED
并重新加载FPM
sudo service php5.5-fpm restart
替换为您所使用的任何版本。
答案2
编辑您的 php-fpm 池配置以指定要登录的备用路径。
例如:您可以编辑/etc/php-fpm.d/www.conf
并添加类似以下内容:
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on
或者您可以关闭注销功能,但这是一个非常糟糕的主意。
答案3
该设置应该可以起作用。
php-fpm
不仅需要重新启动nginx
。
此外,还有各种启动(/etc/init.d/)脚本可以kill
在停止时执行正确的工作php-fpm
。
尝试
ps -ef | grep php
获取可执行文件名称(如php5-fpm
)。然后
killall php5-fpm
(或者您的名字)。
然后再次启动 php-fpm。
编辑2016在大多数现代 unix 系统上
# service php-fpm reload
是重新加载配置的正确方法(A.Gibbs 的评论)
答案4
php_flag[display_errors] = off 对我来说不起作用
就我而言
php_admin_value[display_errors] = off