问题
It's been working for ages and stopped. I must be missing something obvious so figured stack overflow might be able to help.
/etc/php5/apache2/php.ini relevant settings are:
display_errors = On (not sure if this makes a difference)
log_errors = On
error_log = "/var/www/error_log.log"
In my code I have:
echo 'About to log';
error_log('An error');
I see About to log on the page, but nothing in the error log. Any ideas?
回答1:
Did you restart the Web server? Until you do php.ini
changes are not considered.
Also, if you want to track PHP errors, you need to have track_errors=On
and error_reporting=E_ALL
, although that is not related with error_log
calls. Also make sure that the error log file is writeable by the Web server user.
回答2:
It ended up being permission issues. The file grew too big to open quickly, so I deleted and recreated it, but with read only permissions.
Totally forgot I deleted it, what a pain.
回答3:
In my php.ini file (Xampp default), there was a second entry for error_log
overriding the one that I had set.
So if the other answers do not work for you too, search again for multiple entries of the necessary settings.
来源:https://stackoverflow.com/questions/5072987/php-error-log-not-working