我有Fedora 16和Nginx以及PHP-fpm.一切都很好.所有带有PHP通知,warnig错误等的日志都在/var/log/PHP-fpm/www-error.log中.有没有办法配置PHP-fpm在正确的日志文件中写入错误,配置为Nginx的错误日志?所以我想在每个虚拟主机上记录PHP错误而不是在一个全局文件中. (比如在apache和PHP中).
解决方法
PHP-FPM指令:catch_workers_output = yes
将导致PHP发送到stdout / stderr的错误被发送回Nginx,它们将被记录.
将导致PHP发送到stdout / stderr的错误被发送回Nginx,它们将被记录.
在PHP 5.2.4及更高版本中,指令display_errors不再是布尔值,而是接受’stderr’作为选项.这应该导致所有错误返回到Nginx,并按vhost记录.
所以在你的PHP-FPM配置中:
PHP_admin_value [display_errors] =’stderr’
你的另一个选择是指令:
PHP_admin_value [error_log] = /var/log/fpm-PHP.www.log
这是你现在可能使用的. PHP-fpm.conf支持一些变量,比如$pool(对你来说,可能会返回’www’).
如果您有多个池,则可以轻松地单独记录它们.