Q. Can you tell me exact location for php error log file? I'm running CentOS 5.x server with Apache 2.2 + PHP 5.x server.
A. Generally, on all production web servers displaying error to end users via a web browser is turned off using php.ini file settings. Open /etc/php.ini file and find out line that read as follows:
error_log
error_log defines the name of the file where script errors should be logged. The file should be writable by the web server's user. If the special value syslog is used, the errors are sent to the system logger instead. On Unix, this means syslogd and on Windows NT it means the event log. The system logger is not supported on Windows 95. If this directive is not set, errors are sent to the SAPI error logger. For example, it is an error log in Apache (/var/log/httpd/error_log file) or stderr in command line (CLI)
This line define exact location for each php instance. If error_log set to syslog, open /var/log/messages file to view log. For example if error_log is set to /var/log/apache/php.errors, type the following to display error log:
$ tail -f /var/log/apache/php.errors
$ grep something /var/log/apache/php.errors
$ vi /var/log/apache/php.errors
See also:
Featured Articles:
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- 20 Linux Server Hardening Security Tips
- My 10 UNIX Command Line Mistakes
- Linux: 20 Iptables Examples For New SysAdmins

- 25 PHP Security Best Practices For Sys Admins
- The Novice Guide To Buying A Linux Laptop
- 10 Greatest Open Source Software Of 2009
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- Top 20 OpenSSH Server Best Security Practices
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Linux Video Editor Software
Facebook it - Tweet it - Print it -


{ 4 comments… read them below or add one }
The problem with the default set-up on a larger multi-user linux server environment is that System log files are NOT readable by ordinary users. As such it is recommended that users add something like the following to their PHP scripts.
ini_set(‘error_log’, ‘script_errors.log’)
ini_set(‘log_errors’, ‘On’)
ini_set(‘display_errors’, ‘Off’)
Note the file “script_errors.log” may need a full path, and should be writeable by the Apache web server user. That is it should exist with permissions 701 (writeable by others)
What if I’m using lighttpd? Where will I be able to find php logs?
Same location which is defined in your php.ini. It is same for Apache, lighttpd, nginx and so on. See how to configure php.ini for log file.
Hey, this helped me. Thanks much!