Jay Sidri
Jay Sidri

Reputation: 6406

PHP error logging does not work via .htaccess

I need to have all PHP errors logged to a file on my centOS box. I think I'm doing everything I'm supposed to. Here's my .htaccess file:

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

I'm out of ideas.. can anyone help?

Thanks

Upvotes: 15

Views: 7594

Answers (2)

Tom Haigh
Tom Haigh

Reputation: 57845

You probably want to use php_value not php_flag when you set the log path. php_flag is only used for setting boolean configuration properties.

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

Upvotes: 15

too much php
too much php

Reputation: 91068

Try adding the following test page to your web root:

<?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()");

Browse to /debug.php and you should see the following output:

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

You should also see two messages appear in your log file each time you visit the page.

Upvotes: 23

Related Questions