PHP错误日志记录不能通过.htaccess工作

时间:2009-10-09 07:50:56

标签: php logging

我需要将所有PHP错误记录到我的centOS盒子上的文件中。我想我正在做我应该做的一切。这是我的.htaccess文件:

php_flag display_errors off
php_flag log_errors On
php_flag error_log /var/www/vhosts/hostname/logs/fo_errors.log
  • 在我的php.ini中,我设置了error_reporting = E_ALL。
  • Apache确实解析.htaccess
  • /var/www/vhosts/hostname/logs/fo_errors.log已将所有者设置为apache:apache并具有写入权限。

我没有想法......任何人都可以帮忙吗?

由于

2 个答案:

答案 0 :(得分:23)

尝试将以下测试页添加到您的网络根目录:

<?php
// debug.php
echo "<pre>";
echo "log_errors = [", ini_get('log_errors'), "]\n";
echo "error_log = [", ini_get('error_log'), "]\n";
echo "writeable? ", is_writable(ini_get('error_log')) ? 'Yes' : 'No', "\n";
echo "</pre>";
error_log("Test from error_log()");
user_error("Test error from user_error()");

浏览到/debug.php,您应该看到以下输出:

log_errors = [1]
error_log = [/var/www/vhosts//logs/fo_errors.log]
Writeable? Yes

每次访问该页面时,您还应该会在日志文件中看到两条消息。

答案 1 :(得分:14)

您可能希望在设置日志路径时使用php_value而不是php_flagphp_flag仅用于设置布尔配置属性。

php_flag display_errors off 
php_flag log_errors On 
php_value error_log /var/www/vhosts/hostname/logs/fo_errors.log