PHP 5.3.9 log_errors不工作,不保存Debian Lenny日志文件中的错误

时间:2012-01-26 11:36:35

标签: php apache logging

我想在我的php ini文件中关闭生产环境中的display_errors,并将错误保存在日志文件中。经过几个小时没有成功,我决定征求意见。

我做了什么:

在加载的ini文件中根据php info:

display_errors = Off
log_errors = On
error_log = /var/log/apache2/php.errors
error_reporting=E_ALL

(file exists, is writable and chown to apache user www-data)

重启apache

生成致命错误,函数未定义。

检查了日志文件但没有保存,日志文件为0kb

在phpinfo()中我有error_reporting = 30711

有什么建议吗?我错过了什么吗?

由于

3 个答案:

答案 0 :(得分:2)

创建一个可从Apache写入的目录。试试这样的事情

mkdir /var/log/php
chown www-data /var/log/php

在php.ini中

error_log = /var/log/php/php_errors.log

请记住旋转/var/log/php/php_errors.log

答案 1 :(得分:1)

我认为这是因为apache2目录由root拥有,并且对该组以外的用户没有读/执行权限。因此,即使php.errors文件存在且可写,因为其包含的目录不可访问,因此www-data无法写入。

答案 2 :(得分:0)

我遇到了同样的问题,如果在php.ini

上选择syslog,日志将会起作用