php error_log not working
up vote
22
down vote
favorite
This has been asked 1000 times and I have browsed through the different posts before posting this but have not found an answer. As long as I have been prgramming with PHP, this have always been a nightmare to get working. Can someone please tell me what I am doing wrong here?
I have error_log set in the ini file along with error_reporting = E_ALL | E_STRICT
What else am I missing? This usually gave it to me. I want this set in the ini file and not in my scripts.
Another interesting thing that is happening is that when I purposfully try and throw an error in one of my scripts, Apache restarts over and over again.
This is my event log after one error. Loot at the timestamp
Wed Nov 04 19:34:23 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:23 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:23 2009] [notice] Parent: Created child process 1700
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Child process is running
[Wed Nov 04 19:34:23 2009] [notice] Child 3008: Released the start mutex
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Acquired the start mutex.
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Starting 64 worker threads.
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Starting thread to listen on port 80.
[Wed Nov 04 19:34:24 2009] [notice] Child 3008: All worker threads have exited.
[Wed Nov 04 19:34:24 2009] [notice] Child 3008: Child process is exiting
[Wed Nov 04 19:34:53 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:53 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:53 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:53 2009] [notice] Parent: Created child process 3656
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Child process is running
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Acquired the start mutex.
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Starting 64 worker threads.
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Starting thread to listen on port 80.
[Wed Nov 04 19:34:53 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:54 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:54 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:54 2009] [notice] Parent: Created child process 3980
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Child process is running
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Acquired the start mutex.
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Starting 64 worker threads.
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Starting thread to listen on port 80.
[Wed Nov 04 19:34:54 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:54 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:54 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:54 2009] [notice] Parent: Created child process 1600
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Child process is running
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Acquired the start mutex.
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Starting 64 worker threads.
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Starting thread to listen on port 80.
[Wed Nov 04 19:34:55 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:55 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:55 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:55 2009] [notice] Parent: Created child process 1068
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Child process is running
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Acquired the start mutex.
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Starting 64 worker threads.
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Starting thread to listen on port 80.
[Wed Nov 04 19:34:55 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:55 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:55 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:55 2009] [notice] Parent: Created child process 3220
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Child process is running
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Acquired the start mutex.
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Starting 64 worker threads.
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Starting thread to listen on port 80.
php error-logging error-log selinux
add a comment |
up vote
22
down vote
favorite
This has been asked 1000 times and I have browsed through the different posts before posting this but have not found an answer. As long as I have been prgramming with PHP, this have always been a nightmare to get working. Can someone please tell me what I am doing wrong here?
I have error_log set in the ini file along with error_reporting = E_ALL | E_STRICT
What else am I missing? This usually gave it to me. I want this set in the ini file and not in my scripts.
Another interesting thing that is happening is that when I purposfully try and throw an error in one of my scripts, Apache restarts over and over again.
This is my event log after one error. Loot at the timestamp
Wed Nov 04 19:34:23 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:23 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:23 2009] [notice] Parent: Created child process 1700
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Child process is running
[Wed Nov 04 19:34:23 2009] [notice] Child 3008: Released the start mutex
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Acquired the start mutex.
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Starting 64 worker threads.
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Starting thread to listen on port 80.
[Wed Nov 04 19:34:24 2009] [notice] Child 3008: All worker threads have exited.
[Wed Nov 04 19:34:24 2009] [notice] Child 3008: Child process is exiting
[Wed Nov 04 19:34:53 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:53 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:53 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:53 2009] [notice] Parent: Created child process 3656
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Child process is running
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Acquired the start mutex.
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Starting 64 worker threads.
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Starting thread to listen on port 80.
[Wed Nov 04 19:34:53 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:54 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:54 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:54 2009] [notice] Parent: Created child process 3980
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Child process is running
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Acquired the start mutex.
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Starting 64 worker threads.
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Starting thread to listen on port 80.
[Wed Nov 04 19:34:54 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:54 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:54 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:54 2009] [notice] Parent: Created child process 1600
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Child process is running
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Acquired the start mutex.
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Starting 64 worker threads.
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Starting thread to listen on port 80.
[Wed Nov 04 19:34:55 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:55 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:55 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:55 2009] [notice] Parent: Created child process 1068
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Child process is running
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Acquired the start mutex.
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Starting 64 worker threads.
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Starting thread to listen on port 80.
[Wed Nov 04 19:34:55 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:55 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:55 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:55 2009] [notice] Parent: Created child process 3220
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Child process is running
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Acquired the start mutex.
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Starting 64 worker threads.
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Starting thread to listen on port 80.
php error-logging error-log selinux
add a comment |
up vote
22
down vote
favorite
up vote
22
down vote
favorite
This has been asked 1000 times and I have browsed through the different posts before posting this but have not found an answer. As long as I have been prgramming with PHP, this have always been a nightmare to get working. Can someone please tell me what I am doing wrong here?
I have error_log set in the ini file along with error_reporting = E_ALL | E_STRICT
What else am I missing? This usually gave it to me. I want this set in the ini file and not in my scripts.
Another interesting thing that is happening is that when I purposfully try and throw an error in one of my scripts, Apache restarts over and over again.
This is my event log after one error. Loot at the timestamp
Wed Nov 04 19:34:23 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:23 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:23 2009] [notice] Parent: Created child process 1700
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Child process is running
[Wed Nov 04 19:34:23 2009] [notice] Child 3008: Released the start mutex
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Acquired the start mutex.
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Starting 64 worker threads.
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Starting thread to listen on port 80.
[Wed Nov 04 19:34:24 2009] [notice] Child 3008: All worker threads have exited.
[Wed Nov 04 19:34:24 2009] [notice] Child 3008: Child process is exiting
[Wed Nov 04 19:34:53 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:53 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:53 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:53 2009] [notice] Parent: Created child process 3656
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Child process is running
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Acquired the start mutex.
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Starting 64 worker threads.
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Starting thread to listen on port 80.
[Wed Nov 04 19:34:53 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:54 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:54 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:54 2009] [notice] Parent: Created child process 3980
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Child process is running
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Acquired the start mutex.
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Starting 64 worker threads.
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Starting thread to listen on port 80.
[Wed Nov 04 19:34:54 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:54 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:54 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:54 2009] [notice] Parent: Created child process 1600
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Child process is running
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Acquired the start mutex.
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Starting 64 worker threads.
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Starting thread to listen on port 80.
[Wed Nov 04 19:34:55 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:55 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:55 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:55 2009] [notice] Parent: Created child process 1068
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Child process is running
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Acquired the start mutex.
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Starting 64 worker threads.
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Starting thread to listen on port 80.
[Wed Nov 04 19:34:55 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:55 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:55 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:55 2009] [notice] Parent: Created child process 3220
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Child process is running
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Acquired the start mutex.
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Starting 64 worker threads.
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Starting thread to listen on port 80.
php error-logging error-log selinux
This has been asked 1000 times and I have browsed through the different posts before posting this but have not found an answer. As long as I have been prgramming with PHP, this have always been a nightmare to get working. Can someone please tell me what I am doing wrong here?
I have error_log set in the ini file along with error_reporting = E_ALL | E_STRICT
What else am I missing? This usually gave it to me. I want this set in the ini file and not in my scripts.
Another interesting thing that is happening is that when I purposfully try and throw an error in one of my scripts, Apache restarts over and over again.
This is my event log after one error. Loot at the timestamp
Wed Nov 04 19:34:23 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:23 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:23 2009] [notice] Parent: Created child process 1700
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Child process is running
[Wed Nov 04 19:34:23 2009] [notice] Child 3008: Released the start mutex
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Acquired the start mutex.
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Starting 64 worker threads.
[Wed Nov 04 19:34:23 2009] [notice] Child 1700: Starting thread to listen on port 80.
[Wed Nov 04 19:34:24 2009] [notice] Child 3008: All worker threads have exited.
[Wed Nov 04 19:34:24 2009] [notice] Child 3008: Child process is exiting
[Wed Nov 04 19:34:53 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:53 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:53 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:53 2009] [notice] Parent: Created child process 3656
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Child process is running
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Acquired the start mutex.
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Starting 64 worker threads.
[Wed Nov 04 19:34:53 2009] [notice] Child 3656: Starting thread to listen on port 80.
[Wed Nov 04 19:34:53 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:54 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:54 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:54 2009] [notice] Parent: Created child process 3980
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Child process is running
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Acquired the start mutex.
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Starting 64 worker threads.
[Wed Nov 04 19:34:54 2009] [notice] Child 3980: Starting thread to listen on port 80.
[Wed Nov 04 19:34:54 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:54 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:54 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:54 2009] [notice] Parent: Created child process 1600
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Child process is running
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Acquired the start mutex.
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Starting 64 worker threads.
[Wed Nov 04 19:34:54 2009] [notice] Child 1600: Starting thread to listen on port 80.
[Wed Nov 04 19:34:55 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:55 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:55 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:55 2009] [notice] Parent: Created child process 1068
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Child process is running
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Acquired the start mutex.
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Starting 64 worker threads.
[Wed Nov 04 19:34:55 2009] [notice] Child 1068: Starting thread to listen on port 80.
[Wed Nov 04 19:34:55 2009] [notice] Parent: child process exited with status 128 -- Restarting.
[Wed Nov 04 19:34:55 2009] [notice] Apache/2.2.14 (Win32) PHP/5.3.0 configured -- resuming normal operations
[Wed Nov 04 19:34:55 2009] [notice] Server built: Sep 28 2009 22:41:08
[Wed Nov 04 19:34:55 2009] [notice] Parent: Created child process 3220
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Child process is running
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Acquired the start mutex.
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Starting 64 worker threads.
[Wed Nov 04 19:34:56 2009] [notice] Child 3220: Starting thread to listen on port 80.
php error-logging error-log selinux
php error-logging error-log selinux
edited Mar 23 '15 at 15:41
Anthony
392615
392615
asked Nov 5 '09 at 2:48
Jim
121116
121116
add a comment |
add a comment |
14 Answers
14
active
oldest
votes
up vote
9
down vote
You also need to set log_errors = On
in php.ini.
3
Hi Chaos, thanks. I already have that set to On. Am I missing anything else?
– Jim
Nov 5 '09 at 2:55
Just restart the server.
– aagjalpankaj
Apr 7 '17 at 5:48
add a comment |
up vote
8
down vote
The problem I ran into was that the error log I had designated was write protected. All my .htaccess settings were correct, PHP just couldn't write to the error log because it had no permissions. This fixed it right up for me:
chmod 777 watermellon-app-errors.log
Obviously, you're going to want to change the .log to whatever file you're using for a log.
4
Do the logs really need 777? Ain't 644 enough?
– hugo der hungrige
Apr 3 '13 at 22:22
1
Yes, you're correct. Of course, 644 might not be enough if the file's owner is someone else. You could use 777 to test it, and then lower permissions to see what works.
– Thomas Keene
Aug 29 '13 at 18:42
In my case, I needed 646.. just FYI in case someone else runs into a problem like me
– FastTrack
Jan 26 '16 at 17:17
On Mac OS, I had to use 666 since the normal files are set up as root:wheel I probably could have left it 646 since I think apache is running as "_www" by default.
– Phil Glau
Mar 3 '17 at 22:19
Works on - Nginx+Httpd (Centos 6.6), thanks.
– Sid
Sep 17 at 10:06
add a comment |
up vote
8
down vote
In case anyone else is having trouble getting their local development environment to log errors, here's what fixed it for me:
On windows, error_log
must be set to the complete path to the log for error_log()
to work (error_log = c:apachephp_errors.log
). However, if error_log = php_errors.log
with no path, php will still be able to log startup errors such as
PHP Startup: Unable to load dynamic library 'extphp_mysqli.dll' - The specified module could not be found
I specified full path and did not create the file in advance. When I restart WAMP the log file is created but WAMP display a yellow icon and localhost won't load. Any ideas what that might be? When I comment outerror_log
everything is fine but PHP errors appear in the Apache log.
– thomthom
Dec 28 '12 at 1:02
add a comment |
up vote
4
down vote
If the error_log directive is set, the file will be used for recording php errors, when it is not set errors will be logged to the Apache log. Take a look at http://us3.php.net/manual/en/errorfunc.configuration.php#ini.error-log.
The error_log file and the directory it's in must be writable by the user that Apache is running under. If the file isn't being created, it's probably due to a permissions issue.
I don't know for sure why Apache would be crashing on you, but I'm guessing it's a permissions issue of some sort.
I stand corrected, thanks. I've edited my answer.
– bradym
Nov 19 '09 at 16:05
add a comment |
up vote
3
down vote
Check PHP-FPM is not explicitly setting error_log
:
Make sure the file /etc/php-fpm.d/www.conf
does not contain php_admin_value
settings for error_log. Search for the following and comment them out using a semi-colon:
; NOTE: If these are set, ini_set('error_log', 'path') will have no effect
; inside your php code, and this will be forced to be the value always.
; php_admin_value[error_log] = /var/log/php-fpm/www-error.log
; php_admin_flag[log_errors] = on
Then restart php-fpm:
systemctl restart php-fpm
Check Apache .htaccess files are not setting the error_log
value using
php_admin_value
settings in apache configuration files cannot be overridden, so make sure you dont have any php_admin_value for the error_log
setting in the Apache configuration files. Also check for php_value
settings just in case.
PHP Website - How to change configuration settings
add a comment |
up vote
1
down vote
I don't understand why, but the error log is now working. Here is what I did. I gave up and commented back out the error_log directive and closed the ini file. I ran the script with the parse error to see of Apache would still crash and I got the PHP error in the log file. This is freaky because the ini file no longer has error_log enabled and my script is not using ini_set().
Does anyone have an explanation for this madness? Also, Apache no longer crashes.
2
"Madness" is a pretty good explanation.
– Justin Johnson
Nov 5 '09 at 5:12
add a comment |
up vote
1
down vote
If you are using Fedora, SELinux (enabled by default) will prevent apache / httpd from appending errors to your log file even when your file is specified in php.ini and its containing directory has all permissions allowed.
You can see if this is happening by looking at your system log file in /var/log/messages
The ideal solution is to configure SELinux to allow access on the log file.
The quicker solution is to disable SELinux in /etc/selinux/config by setting SELINUX to disabled.
You'll need to reboot your system after doing this for the change to take effect.
1
The advice you gave actually has a website to stop that advice being given. stopdisablingselinux.com
– ʰᵈˑ
Mar 23 '15 at 15:47
1
I know, hence my writing "ideal." I'm not yet convinced that a home user working locally needs SELinux turned on.
– Anthony
Mar 23 '15 at 19:42
add a comment |
up vote
1
down vote
In my case, on a CentOS development server, after a full yum update
the permission on /var/log/http was changed to 700 and the user to 'root', so the user 'apache' wasn't able to enter or write into it. It was still able to write into the existing file /var/log/httpd/error.log but it wasn't able to create a new file, as I use date-suffixed log files.
Issuing the command
chown apache /var/log/httpd
solved the problem.
add a comment |
up vote
0
down vote
As bradym said, check whether you have write permissions to the directory where you php error log is located for apache user. If you created a log file with written permissions it's not enough, the dir should have them too.
add a comment |
up vote
0
down vote
The error_log = "C:phpLogerror.log" was not working for me either. The solution for me was that you shouldn't create the error.log yourself, because PHP will do it for you. See the PHP message board. I'm using PHP 5.2 on a Windows 2008 server
add a comment |
up vote
0
down vote
The way it works on my ubuntu (Apache 2.4.7, PHP 5.5.9) is the following:
command line script:
- writes the log into the path pointed by
error_log
iflog_errors = On
. Settings in/etc/php5/cli/php.ini
;
web request via apache:
- if
log_errors = On
(/etc/php5/apache2/php.ini
), the error appended into the path pointed byErrorLog
apache directive in the virtualhost. If that directive does not exist, the php.inierror_log
path is used; - if
log_errors = Off
not logs are written anywhere;
As far as I remember, it almost worked this way in most of the linux stacks
add a comment |
up vote
0
down vote
This did the trick for me.
setsebool -P httpd_unified 1
Please note, this would be the preferred method below to try first:
semanage fcontext -a -t httpd_sys_rw_content_t 'errorLogNameHere.error.log
restorecon -v 'errorLogNameHere.error.log'
This answer was derived from the logs from executing this command line:
journalctl -xe
Further information on the system I was running on:
PHP 7.0 and
CentOS 7
Not sure if it's not obvious, but the issue was Apache's configuration to writing files. I did try chmod 777, chmod a+w on the logging directory, but this didn't work for me.
Hope this can help somebody.
add a comment |
up vote
0
down vote
Here is my troubleshooting guide to error_log()
calls not working.
Look at your server's configuration to find out where the default error log file is.
This depends on which server you're using. To get you started, have a look at Apache's
ErrorLog
option if you're using Apache or Nginx'serror_log
option if you're using Nginx. Make sure it is set to a file. If you're using a tool like Valet, note that it's using server software like Nginx behind the scenes.Check the permissions of your server's error log file.
On Unix-like systems, it should be writeable by the correct user and group, and the permissions of the parent directory and all its ancestors need to be correct as well. Use
chmod
andchown
.Check the configuration of PHP in the
.ini
files.Specifically, check for
log_errors = On
anderror_reporting = E_ALL | E_STRICT
anderror_log = /tmp/example/php_errors.log
(see docs forlog_errors
,error_reporting
anderror_log
configuration settings). To find the.ini
file, look at the output ofphpinfo();
. Iferror_log
is not set, by default it goes to the error log for the server, mentioned in the previous steps. Iferror_log
is set to a file, it should already exist and be writeable, just like in previous steps. Remember to restart the server after configuration changes.Check that PHP's settings aren't being changed by server configuration.
Your server's configuration (even
.htaccess
) can change PHP configuration settings. In Apache, this is done usingphp_admin_value
andphp_admin_flag
(docs). For instance, you may find in your.htaccess
file this line:php_admin_flag[log_errors] = off
. Remember to restart the server after configuration changes.At this point, you should be able to create a test file
test.php
with the contents<?php error_log("test");
, restart your server, and open the URL in your browser, and you should be able to seetest
in your error log (either the server's, or the one specified byerror_log =
). But keep reading.Check that PHP's settings aren't being changed at run-time.
The
log_errors
option can be changed at runtime by runningini_set('log_errors', 1);
, and so can the other configuration optionserror_reporting
anderror_log
. Also note there is a specialerror_reporting()
PHP function which changes the configuration at run-time. Search your code-base for any invocations ofini_set
orerror_reporting
. WordPress for example does run these depending on the value ofWP_DEBUG
.
Other things to look at: You may be having permission issues in SELinux (see this answer).
add a comment |
up vote
-3
down vote
Make sure and also set
display_errors = On
And try
error_reporting(E_ALL);
In your code. Often times I include a runtime error config script that turns errors on when I'm developing, and turns them back off when I'm not. It looks something roughly like this:
if ($debugmode == 'on')
error_reporting(E_ALL);
ini_set("display_errors", 1);
else
error_reporting(0);
ini_set("display_errors", 0);
Hope this helps.
** I didn't read that correctly, you want to log errors instead of display, in that case Chaos' answer is what you're looking for.
6
then please delete this post.
– mauris
Nov 5 '09 at 2:58
1
Hi Jeremy, thanks for the help. :)
– Jim
Nov 5 '09 at 3:03
then please either delete the post as @mauris said, or make a better edit: starting stating (ans emphasized please) that this doesn't answer to OP's question but to something else in case you've landed here because of that...
– Erdal G.
Mar 20 at 13:59
add a comment |
14 Answers
14
active
oldest
votes
14 Answers
14
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
9
down vote
You also need to set log_errors = On
in php.ini.
3
Hi Chaos, thanks. I already have that set to On. Am I missing anything else?
– Jim
Nov 5 '09 at 2:55
Just restart the server.
– aagjalpankaj
Apr 7 '17 at 5:48
add a comment |
up vote
9
down vote
You also need to set log_errors = On
in php.ini.
3
Hi Chaos, thanks. I already have that set to On. Am I missing anything else?
– Jim
Nov 5 '09 at 2:55
Just restart the server.
– aagjalpankaj
Apr 7 '17 at 5:48
add a comment |
up vote
9
down vote
up vote
9
down vote
You also need to set log_errors = On
in php.ini.
You also need to set log_errors = On
in php.ini.
edited Nov 8 at 10:51
Flimm
48.6k23130151
48.6k23130151
answered Nov 5 '09 at 2:54
chaos
102k25271289
102k25271289
3
Hi Chaos, thanks. I already have that set to On. Am I missing anything else?
– Jim
Nov 5 '09 at 2:55
Just restart the server.
– aagjalpankaj
Apr 7 '17 at 5:48
add a comment |
3
Hi Chaos, thanks. I already have that set to On. Am I missing anything else?
– Jim
Nov 5 '09 at 2:55
Just restart the server.
– aagjalpankaj
Apr 7 '17 at 5:48
3
3
Hi Chaos, thanks. I already have that set to On. Am I missing anything else?
– Jim
Nov 5 '09 at 2:55
Hi Chaos, thanks. I already have that set to On. Am I missing anything else?
– Jim
Nov 5 '09 at 2:55
Just restart the server.
– aagjalpankaj
Apr 7 '17 at 5:48
Just restart the server.
– aagjalpankaj
Apr 7 '17 at 5:48
add a comment |
up vote
8
down vote
The problem I ran into was that the error log I had designated was write protected. All my .htaccess settings were correct, PHP just couldn't write to the error log because it had no permissions. This fixed it right up for me:
chmod 777 watermellon-app-errors.log
Obviously, you're going to want to change the .log to whatever file you're using for a log.
4
Do the logs really need 777? Ain't 644 enough?
– hugo der hungrige
Apr 3 '13 at 22:22
1
Yes, you're correct. Of course, 644 might not be enough if the file's owner is someone else. You could use 777 to test it, and then lower permissions to see what works.
– Thomas Keene
Aug 29 '13 at 18:42
In my case, I needed 646.. just FYI in case someone else runs into a problem like me
– FastTrack
Jan 26 '16 at 17:17
On Mac OS, I had to use 666 since the normal files are set up as root:wheel I probably could have left it 646 since I think apache is running as "_www" by default.
– Phil Glau
Mar 3 '17 at 22:19
Works on - Nginx+Httpd (Centos 6.6), thanks.
– Sid
Sep 17 at 10:06
add a comment |
up vote
8
down vote
The problem I ran into was that the error log I had designated was write protected. All my .htaccess settings were correct, PHP just couldn't write to the error log because it had no permissions. This fixed it right up for me:
chmod 777 watermellon-app-errors.log
Obviously, you're going to want to change the .log to whatever file you're using for a log.
4
Do the logs really need 777? Ain't 644 enough?
– hugo der hungrige
Apr 3 '13 at 22:22
1
Yes, you're correct. Of course, 644 might not be enough if the file's owner is someone else. You could use 777 to test it, and then lower permissions to see what works.
– Thomas Keene
Aug 29 '13 at 18:42
In my case, I needed 646.. just FYI in case someone else runs into a problem like me
– FastTrack
Jan 26 '16 at 17:17
On Mac OS, I had to use 666 since the normal files are set up as root:wheel I probably could have left it 646 since I think apache is running as "_www" by default.
– Phil Glau
Mar 3 '17 at 22:19
Works on - Nginx+Httpd (Centos 6.6), thanks.
– Sid
Sep 17 at 10:06
add a comment |
up vote
8
down vote
up vote
8
down vote
The problem I ran into was that the error log I had designated was write protected. All my .htaccess settings were correct, PHP just couldn't write to the error log because it had no permissions. This fixed it right up for me:
chmod 777 watermellon-app-errors.log
Obviously, you're going to want to change the .log to whatever file you're using for a log.
The problem I ran into was that the error log I had designated was write protected. All my .htaccess settings were correct, PHP just couldn't write to the error log because it had no permissions. This fixed it right up for me:
chmod 777 watermellon-app-errors.log
Obviously, you're going to want to change the .log to whatever file you're using for a log.
answered Oct 8 '12 at 18:58
Thomas Keene
19122
19122
4
Do the logs really need 777? Ain't 644 enough?
– hugo der hungrige
Apr 3 '13 at 22:22
1
Yes, you're correct. Of course, 644 might not be enough if the file's owner is someone else. You could use 777 to test it, and then lower permissions to see what works.
– Thomas Keene
Aug 29 '13 at 18:42
In my case, I needed 646.. just FYI in case someone else runs into a problem like me
– FastTrack
Jan 26 '16 at 17:17
On Mac OS, I had to use 666 since the normal files are set up as root:wheel I probably could have left it 646 since I think apache is running as "_www" by default.
– Phil Glau
Mar 3 '17 at 22:19
Works on - Nginx+Httpd (Centos 6.6), thanks.
– Sid
Sep 17 at 10:06
add a comment |
4
Do the logs really need 777? Ain't 644 enough?
– hugo der hungrige
Apr 3 '13 at 22:22
1
Yes, you're correct. Of course, 644 might not be enough if the file's owner is someone else. You could use 777 to test it, and then lower permissions to see what works.
– Thomas Keene
Aug 29 '13 at 18:42
In my case, I needed 646.. just FYI in case someone else runs into a problem like me
– FastTrack
Jan 26 '16 at 17:17
On Mac OS, I had to use 666 since the normal files are set up as root:wheel I probably could have left it 646 since I think apache is running as "_www" by default.
– Phil Glau
Mar 3 '17 at 22:19
Works on - Nginx+Httpd (Centos 6.6), thanks.
– Sid
Sep 17 at 10:06
4
4
Do the logs really need 777? Ain't 644 enough?
– hugo der hungrige
Apr 3 '13 at 22:22
Do the logs really need 777? Ain't 644 enough?
– hugo der hungrige
Apr 3 '13 at 22:22
1
1
Yes, you're correct. Of course, 644 might not be enough if the file's owner is someone else. You could use 777 to test it, and then lower permissions to see what works.
– Thomas Keene
Aug 29 '13 at 18:42
Yes, you're correct. Of course, 644 might not be enough if the file's owner is someone else. You could use 777 to test it, and then lower permissions to see what works.
– Thomas Keene
Aug 29 '13 at 18:42
In my case, I needed 646.. just FYI in case someone else runs into a problem like me
– FastTrack
Jan 26 '16 at 17:17
In my case, I needed 646.. just FYI in case someone else runs into a problem like me
– FastTrack
Jan 26 '16 at 17:17
On Mac OS, I had to use 666 since the normal files are set up as root:wheel I probably could have left it 646 since I think apache is running as "_www" by default.
– Phil Glau
Mar 3 '17 at 22:19
On Mac OS, I had to use 666 since the normal files are set up as root:wheel I probably could have left it 646 since I think apache is running as "_www" by default.
– Phil Glau
Mar 3 '17 at 22:19
Works on - Nginx+Httpd (Centos 6.6), thanks.
– Sid
Sep 17 at 10:06
Works on - Nginx+Httpd (Centos 6.6), thanks.
– Sid
Sep 17 at 10:06
add a comment |
up vote
8
down vote
In case anyone else is having trouble getting their local development environment to log errors, here's what fixed it for me:
On windows, error_log
must be set to the complete path to the log for error_log()
to work (error_log = c:apachephp_errors.log
). However, if error_log = php_errors.log
with no path, php will still be able to log startup errors such as
PHP Startup: Unable to load dynamic library 'extphp_mysqli.dll' - The specified module could not be found
I specified full path and did not create the file in advance. When I restart WAMP the log file is created but WAMP display a yellow icon and localhost won't load. Any ideas what that might be? When I comment outerror_log
everything is fine but PHP errors appear in the Apache log.
– thomthom
Dec 28 '12 at 1:02
add a comment |
up vote
8
down vote
In case anyone else is having trouble getting their local development environment to log errors, here's what fixed it for me:
On windows, error_log
must be set to the complete path to the log for error_log()
to work (error_log = c:apachephp_errors.log
). However, if error_log = php_errors.log
with no path, php will still be able to log startup errors such as
PHP Startup: Unable to load dynamic library 'extphp_mysqli.dll' - The specified module could not be found
I specified full path and did not create the file in advance. When I restart WAMP the log file is created but WAMP display a yellow icon and localhost won't load. Any ideas what that might be? When I comment outerror_log
everything is fine but PHP errors appear in the Apache log.
– thomthom
Dec 28 '12 at 1:02
add a comment |
up vote
8
down vote
up vote
8
down vote
In case anyone else is having trouble getting their local development environment to log errors, here's what fixed it for me:
On windows, error_log
must be set to the complete path to the log for error_log()
to work (error_log = c:apachephp_errors.log
). However, if error_log = php_errors.log
with no path, php will still be able to log startup errors such as
PHP Startup: Unable to load dynamic library 'extphp_mysqli.dll' - The specified module could not be found
In case anyone else is having trouble getting their local development environment to log errors, here's what fixed it for me:
On windows, error_log
must be set to the complete path to the log for error_log()
to work (error_log = c:apachephp_errors.log
). However, if error_log = php_errors.log
with no path, php will still be able to log startup errors such as
PHP Startup: Unable to load dynamic library 'extphp_mysqli.dll' - The specified module could not be found
edited Sep 21 '17 at 17:17
Alex M
2,33471928
2,33471928
answered Nov 13 '12 at 22:20
Mel Reams
19633
19633
I specified full path and did not create the file in advance. When I restart WAMP the log file is created but WAMP display a yellow icon and localhost won't load. Any ideas what that might be? When I comment outerror_log
everything is fine but PHP errors appear in the Apache log.
– thomthom
Dec 28 '12 at 1:02
add a comment |
I specified full path and did not create the file in advance. When I restart WAMP the log file is created but WAMP display a yellow icon and localhost won't load. Any ideas what that might be? When I comment outerror_log
everything is fine but PHP errors appear in the Apache log.
– thomthom
Dec 28 '12 at 1:02
I specified full path and did not create the file in advance. When I restart WAMP the log file is created but WAMP display a yellow icon and localhost won't load. Any ideas what that might be? When I comment out
error_log
everything is fine but PHP errors appear in the Apache log.– thomthom
Dec 28 '12 at 1:02
I specified full path and did not create the file in advance. When I restart WAMP the log file is created but WAMP display a yellow icon and localhost won't load. Any ideas what that might be? When I comment out
error_log
everything is fine but PHP errors appear in the Apache log.– thomthom
Dec 28 '12 at 1:02
add a comment |
up vote
4
down vote
If the error_log directive is set, the file will be used for recording php errors, when it is not set errors will be logged to the Apache log. Take a look at http://us3.php.net/manual/en/errorfunc.configuration.php#ini.error-log.
The error_log file and the directory it's in must be writable by the user that Apache is running under. If the file isn't being created, it's probably due to a permissions issue.
I don't know for sure why Apache would be crashing on you, but I'm guessing it's a permissions issue of some sort.
I stand corrected, thanks. I've edited my answer.
– bradym
Nov 19 '09 at 16:05
add a comment |
up vote
4
down vote
If the error_log directive is set, the file will be used for recording php errors, when it is not set errors will be logged to the Apache log. Take a look at http://us3.php.net/manual/en/errorfunc.configuration.php#ini.error-log.
The error_log file and the directory it's in must be writable by the user that Apache is running under. If the file isn't being created, it's probably due to a permissions issue.
I don't know for sure why Apache would be crashing on you, but I'm guessing it's a permissions issue of some sort.
I stand corrected, thanks. I've edited my answer.
– bradym
Nov 19 '09 at 16:05
add a comment |
up vote
4
down vote
up vote
4
down vote
If the error_log directive is set, the file will be used for recording php errors, when it is not set errors will be logged to the Apache log. Take a look at http://us3.php.net/manual/en/errorfunc.configuration.php#ini.error-log.
The error_log file and the directory it's in must be writable by the user that Apache is running under. If the file isn't being created, it's probably due to a permissions issue.
I don't know for sure why Apache would be crashing on you, but I'm guessing it's a permissions issue of some sort.
If the error_log directive is set, the file will be used for recording php errors, when it is not set errors will be logged to the Apache log. Take a look at http://us3.php.net/manual/en/errorfunc.configuration.php#ini.error-log.
The error_log file and the directory it's in must be writable by the user that Apache is running under. If the file isn't being created, it's probably due to a permissions issue.
I don't know for sure why Apache would be crashing on you, but I'm guessing it's a permissions issue of some sort.
edited Nov 19 '09 at 16:04
answered Nov 18 '09 at 8:04
bradym
4,3062134
4,3062134
I stand corrected, thanks. I've edited my answer.
– bradym
Nov 19 '09 at 16:05
add a comment |
I stand corrected, thanks. I've edited my answer.
– bradym
Nov 19 '09 at 16:05
I stand corrected, thanks. I've edited my answer.
– bradym
Nov 19 '09 at 16:05
I stand corrected, thanks. I've edited my answer.
– bradym
Nov 19 '09 at 16:05
add a comment |
up vote
3
down vote
Check PHP-FPM is not explicitly setting error_log
:
Make sure the file /etc/php-fpm.d/www.conf
does not contain php_admin_value
settings for error_log. Search for the following and comment them out using a semi-colon:
; NOTE: If these are set, ini_set('error_log', 'path') will have no effect
; inside your php code, and this will be forced to be the value always.
; php_admin_value[error_log] = /var/log/php-fpm/www-error.log
; php_admin_flag[log_errors] = on
Then restart php-fpm:
systemctl restart php-fpm
Check Apache .htaccess files are not setting the error_log
value using
php_admin_value
settings in apache configuration files cannot be overridden, so make sure you dont have any php_admin_value for the error_log
setting in the Apache configuration files. Also check for php_value
settings just in case.
PHP Website - How to change configuration settings
add a comment |
up vote
3
down vote
Check PHP-FPM is not explicitly setting error_log
:
Make sure the file /etc/php-fpm.d/www.conf
does not contain php_admin_value
settings for error_log. Search for the following and comment them out using a semi-colon:
; NOTE: If these are set, ini_set('error_log', 'path') will have no effect
; inside your php code, and this will be forced to be the value always.
; php_admin_value[error_log] = /var/log/php-fpm/www-error.log
; php_admin_flag[log_errors] = on
Then restart php-fpm:
systemctl restart php-fpm
Check Apache .htaccess files are not setting the error_log
value using
php_admin_value
settings in apache configuration files cannot be overridden, so make sure you dont have any php_admin_value for the error_log
setting in the Apache configuration files. Also check for php_value
settings just in case.
PHP Website - How to change configuration settings
add a comment |
up vote
3
down vote
up vote
3
down vote
Check PHP-FPM is not explicitly setting error_log
:
Make sure the file /etc/php-fpm.d/www.conf
does not contain php_admin_value
settings for error_log. Search for the following and comment them out using a semi-colon:
; NOTE: If these are set, ini_set('error_log', 'path') will have no effect
; inside your php code, and this will be forced to be the value always.
; php_admin_value[error_log] = /var/log/php-fpm/www-error.log
; php_admin_flag[log_errors] = on
Then restart php-fpm:
systemctl restart php-fpm
Check Apache .htaccess files are not setting the error_log
value using
php_admin_value
settings in apache configuration files cannot be overridden, so make sure you dont have any php_admin_value for the error_log
setting in the Apache configuration files. Also check for php_value
settings just in case.
PHP Website - How to change configuration settings
Check PHP-FPM is not explicitly setting error_log
:
Make sure the file /etc/php-fpm.d/www.conf
does not contain php_admin_value
settings for error_log. Search for the following and comment them out using a semi-colon:
; NOTE: If these are set, ini_set('error_log', 'path') will have no effect
; inside your php code, and this will be forced to be the value always.
; php_admin_value[error_log] = /var/log/php-fpm/www-error.log
; php_admin_flag[log_errors] = on
Then restart php-fpm:
systemctl restart php-fpm
Check Apache .htaccess files are not setting the error_log
value using
php_admin_value
settings in apache configuration files cannot be overridden, so make sure you dont have any php_admin_value for the error_log
setting in the Apache configuration files. Also check for php_value
settings just in case.
PHP Website - How to change configuration settings
answered Apr 9 '16 at 8:49
Basil Musa
3,30253544
3,30253544
add a comment |
add a comment |
up vote
1
down vote
I don't understand why, but the error log is now working. Here is what I did. I gave up and commented back out the error_log directive and closed the ini file. I ran the script with the parse error to see of Apache would still crash and I got the PHP error in the log file. This is freaky because the ini file no longer has error_log enabled and my script is not using ini_set().
Does anyone have an explanation for this madness? Also, Apache no longer crashes.
2
"Madness" is a pretty good explanation.
– Justin Johnson
Nov 5 '09 at 5:12
add a comment |
up vote
1
down vote
I don't understand why, but the error log is now working. Here is what I did. I gave up and commented back out the error_log directive and closed the ini file. I ran the script with the parse error to see of Apache would still crash and I got the PHP error in the log file. This is freaky because the ini file no longer has error_log enabled and my script is not using ini_set().
Does anyone have an explanation for this madness? Also, Apache no longer crashes.
2
"Madness" is a pretty good explanation.
– Justin Johnson
Nov 5 '09 at 5:12
add a comment |
up vote
1
down vote
up vote
1
down vote
I don't understand why, but the error log is now working. Here is what I did. I gave up and commented back out the error_log directive and closed the ini file. I ran the script with the parse error to see of Apache would still crash and I got the PHP error in the log file. This is freaky because the ini file no longer has error_log enabled and my script is not using ini_set().
Does anyone have an explanation for this madness? Also, Apache no longer crashes.
I don't understand why, but the error log is now working. Here is what I did. I gave up and commented back out the error_log directive and closed the ini file. I ran the script with the parse error to see of Apache would still crash and I got the PHP error in the log file. This is freaky because the ini file no longer has error_log enabled and my script is not using ini_set().
Does anyone have an explanation for this madness? Also, Apache no longer crashes.
answered Nov 5 '09 at 4:24
Jim
121116
121116
2
"Madness" is a pretty good explanation.
– Justin Johnson
Nov 5 '09 at 5:12
add a comment |
2
"Madness" is a pretty good explanation.
– Justin Johnson
Nov 5 '09 at 5:12
2
2
"Madness" is a pretty good explanation.
– Justin Johnson
Nov 5 '09 at 5:12
"Madness" is a pretty good explanation.
– Justin Johnson
Nov 5 '09 at 5:12
add a comment |
up vote
1
down vote
If you are using Fedora, SELinux (enabled by default) will prevent apache / httpd from appending errors to your log file even when your file is specified in php.ini and its containing directory has all permissions allowed.
You can see if this is happening by looking at your system log file in /var/log/messages
The ideal solution is to configure SELinux to allow access on the log file.
The quicker solution is to disable SELinux in /etc/selinux/config by setting SELINUX to disabled.
You'll need to reboot your system after doing this for the change to take effect.
1
The advice you gave actually has a website to stop that advice being given. stopdisablingselinux.com
– ʰᵈˑ
Mar 23 '15 at 15:47
1
I know, hence my writing "ideal." I'm not yet convinced that a home user working locally needs SELinux turned on.
– Anthony
Mar 23 '15 at 19:42
add a comment |
up vote
1
down vote
If you are using Fedora, SELinux (enabled by default) will prevent apache / httpd from appending errors to your log file even when your file is specified in php.ini and its containing directory has all permissions allowed.
You can see if this is happening by looking at your system log file in /var/log/messages
The ideal solution is to configure SELinux to allow access on the log file.
The quicker solution is to disable SELinux in /etc/selinux/config by setting SELINUX to disabled.
You'll need to reboot your system after doing this for the change to take effect.
1
The advice you gave actually has a website to stop that advice being given. stopdisablingselinux.com
– ʰᵈˑ
Mar 23 '15 at 15:47
1
I know, hence my writing "ideal." I'm not yet convinced that a home user working locally needs SELinux turned on.
– Anthony
Mar 23 '15 at 19:42
add a comment |
up vote
1
down vote
up vote
1
down vote
If you are using Fedora, SELinux (enabled by default) will prevent apache / httpd from appending errors to your log file even when your file is specified in php.ini and its containing directory has all permissions allowed.
You can see if this is happening by looking at your system log file in /var/log/messages
The ideal solution is to configure SELinux to allow access on the log file.
The quicker solution is to disable SELinux in /etc/selinux/config by setting SELINUX to disabled.
You'll need to reboot your system after doing this for the change to take effect.
If you are using Fedora, SELinux (enabled by default) will prevent apache / httpd from appending errors to your log file even when your file is specified in php.ini and its containing directory has all permissions allowed.
You can see if this is happening by looking at your system log file in /var/log/messages
The ideal solution is to configure SELinux to allow access on the log file.
The quicker solution is to disable SELinux in /etc/selinux/config by setting SELINUX to disabled.
You'll need to reboot your system after doing this for the change to take effect.
edited Mar 23 '15 at 19:44
answered Mar 23 '15 at 14:49
Anthony
392615
392615
1
The advice you gave actually has a website to stop that advice being given. stopdisablingselinux.com
– ʰᵈˑ
Mar 23 '15 at 15:47
1
I know, hence my writing "ideal." I'm not yet convinced that a home user working locally needs SELinux turned on.
– Anthony
Mar 23 '15 at 19:42
add a comment |
1
The advice you gave actually has a website to stop that advice being given. stopdisablingselinux.com
– ʰᵈˑ
Mar 23 '15 at 15:47
1
I know, hence my writing "ideal." I'm not yet convinced that a home user working locally needs SELinux turned on.
– Anthony
Mar 23 '15 at 19:42
1
1
The advice you gave actually has a website to stop that advice being given. stopdisablingselinux.com
– ʰᵈˑ
Mar 23 '15 at 15:47
The advice you gave actually has a website to stop that advice being given. stopdisablingselinux.com
– ʰᵈˑ
Mar 23 '15 at 15:47
1
1
I know, hence my writing "ideal." I'm not yet convinced that a home user working locally needs SELinux turned on.
– Anthony
Mar 23 '15 at 19:42
I know, hence my writing "ideal." I'm not yet convinced that a home user working locally needs SELinux turned on.
– Anthony
Mar 23 '15 at 19:42
add a comment |
up vote
1
down vote
In my case, on a CentOS development server, after a full yum update
the permission on /var/log/http was changed to 700 and the user to 'root', so the user 'apache' wasn't able to enter or write into it. It was still able to write into the existing file /var/log/httpd/error.log but it wasn't able to create a new file, as I use date-suffixed log files.
Issuing the command
chown apache /var/log/httpd
solved the problem.
add a comment |
up vote
1
down vote
In my case, on a CentOS development server, after a full yum update
the permission on /var/log/http was changed to 700 and the user to 'root', so the user 'apache' wasn't able to enter or write into it. It was still able to write into the existing file /var/log/httpd/error.log but it wasn't able to create a new file, as I use date-suffixed log files.
Issuing the command
chown apache /var/log/httpd
solved the problem.
add a comment |
up vote
1
down vote
up vote
1
down vote
In my case, on a CentOS development server, after a full yum update
the permission on /var/log/http was changed to 700 and the user to 'root', so the user 'apache' wasn't able to enter or write into it. It was still able to write into the existing file /var/log/httpd/error.log but it wasn't able to create a new file, as I use date-suffixed log files.
Issuing the command
chown apache /var/log/httpd
solved the problem.
In my case, on a CentOS development server, after a full yum update
the permission on /var/log/http was changed to 700 and the user to 'root', so the user 'apache' wasn't able to enter or write into it. It was still able to write into the existing file /var/log/httpd/error.log but it wasn't able to create a new file, as I use date-suffixed log files.
Issuing the command
chown apache /var/log/httpd
solved the problem.
edited Sep 21 '17 at 17:15
Alex M
2,33471928
2,33471928
answered Sep 21 '17 at 16:40
Zoltan M
312
312
add a comment |
add a comment |
up vote
0
down vote
As bradym said, check whether you have write permissions to the directory where you php error log is located for apache user. If you created a log file with written permissions it's not enough, the dir should have them too.
add a comment |
up vote
0
down vote
As bradym said, check whether you have write permissions to the directory where you php error log is located for apache user. If you created a log file with written permissions it's not enough, the dir should have them too.
add a comment |
up vote
0
down vote
up vote
0
down vote
As bradym said, check whether you have write permissions to the directory where you php error log is located for apache user. If you created a log file with written permissions it's not enough, the dir should have them too.
As bradym said, check whether you have write permissions to the directory where you php error log is located for apache user. If you created a log file with written permissions it's not enough, the dir should have them too.
answered Dec 10 '10 at 14:44
Łukasz Frankowski
1,7871722
1,7871722
add a comment |
add a comment |
up vote
0
down vote
The error_log = "C:phpLogerror.log" was not working for me either. The solution for me was that you shouldn't create the error.log yourself, because PHP will do it for you. See the PHP message board. I'm using PHP 5.2 on a Windows 2008 server
add a comment |
up vote
0
down vote
The error_log = "C:phpLogerror.log" was not working for me either. The solution for me was that you shouldn't create the error.log yourself, because PHP will do it for you. See the PHP message board. I'm using PHP 5.2 on a Windows 2008 server
add a comment |
up vote
0
down vote
up vote
0
down vote
The error_log = "C:phpLogerror.log" was not working for me either. The solution for me was that you shouldn't create the error.log yourself, because PHP will do it for you. See the PHP message board. I'm using PHP 5.2 on a Windows 2008 server
The error_log = "C:phpLogerror.log" was not working for me either. The solution for me was that you shouldn't create the error.log yourself, because PHP will do it for you. See the PHP message board. I'm using PHP 5.2 on a Windows 2008 server
answered Jul 28 '11 at 8:50
Cerveser
527618
527618
add a comment |
add a comment |
up vote
0
down vote
The way it works on my ubuntu (Apache 2.4.7, PHP 5.5.9) is the following:
command line script:
- writes the log into the path pointed by
error_log
iflog_errors = On
. Settings in/etc/php5/cli/php.ini
;
web request via apache:
- if
log_errors = On
(/etc/php5/apache2/php.ini
), the error appended into the path pointed byErrorLog
apache directive in the virtualhost. If that directive does not exist, the php.inierror_log
path is used; - if
log_errors = Off
not logs are written anywhere;
As far as I remember, it almost worked this way in most of the linux stacks
add a comment |
up vote
0
down vote
The way it works on my ubuntu (Apache 2.4.7, PHP 5.5.9) is the following:
command line script:
- writes the log into the path pointed by
error_log
iflog_errors = On
. Settings in/etc/php5/cli/php.ini
;
web request via apache:
- if
log_errors = On
(/etc/php5/apache2/php.ini
), the error appended into the path pointed byErrorLog
apache directive in the virtualhost. If that directive does not exist, the php.inierror_log
path is used; - if
log_errors = Off
not logs are written anywhere;
As far as I remember, it almost worked this way in most of the linux stacks
add a comment |
up vote
0
down vote
up vote
0
down vote
The way it works on my ubuntu (Apache 2.4.7, PHP 5.5.9) is the following:
command line script:
- writes the log into the path pointed by
error_log
iflog_errors = On
. Settings in/etc/php5/cli/php.ini
;
web request via apache:
- if
log_errors = On
(/etc/php5/apache2/php.ini
), the error appended into the path pointed byErrorLog
apache directive in the virtualhost. If that directive does not exist, the php.inierror_log
path is used; - if
log_errors = Off
not logs are written anywhere;
As far as I remember, it almost worked this way in most of the linux stacks
The way it works on my ubuntu (Apache 2.4.7, PHP 5.5.9) is the following:
command line script:
- writes the log into the path pointed by
error_log
iflog_errors = On
. Settings in/etc/php5/cli/php.ini
;
web request via apache:
- if
log_errors = On
(/etc/php5/apache2/php.ini
), the error appended into the path pointed byErrorLog
apache directive in the virtualhost. If that directive does not exist, the php.inierror_log
path is used; - if
log_errors = Off
not logs are written anywhere;
As far as I remember, it almost worked this way in most of the linux stacks
answered Oct 17 '14 at 11:16
Elvis Ciotti
3,62311517
3,62311517
add a comment |
add a comment |
up vote
0
down vote
This did the trick for me.
setsebool -P httpd_unified 1
Please note, this would be the preferred method below to try first:
semanage fcontext -a -t httpd_sys_rw_content_t 'errorLogNameHere.error.log
restorecon -v 'errorLogNameHere.error.log'
This answer was derived from the logs from executing this command line:
journalctl -xe
Further information on the system I was running on:
PHP 7.0 and
CentOS 7
Not sure if it's not obvious, but the issue was Apache's configuration to writing files. I did try chmod 777, chmod a+w on the logging directory, but this didn't work for me.
Hope this can help somebody.
add a comment |
up vote
0
down vote
This did the trick for me.
setsebool -P httpd_unified 1
Please note, this would be the preferred method below to try first:
semanage fcontext -a -t httpd_sys_rw_content_t 'errorLogNameHere.error.log
restorecon -v 'errorLogNameHere.error.log'
This answer was derived from the logs from executing this command line:
journalctl -xe
Further information on the system I was running on:
PHP 7.0 and
CentOS 7
Not sure if it's not obvious, but the issue was Apache's configuration to writing files. I did try chmod 777, chmod a+w on the logging directory, but this didn't work for me.
Hope this can help somebody.
add a comment |
up vote
0
down vote
up vote
0
down vote
This did the trick for me.
setsebool -P httpd_unified 1
Please note, this would be the preferred method below to try first:
semanage fcontext -a -t httpd_sys_rw_content_t 'errorLogNameHere.error.log
restorecon -v 'errorLogNameHere.error.log'
This answer was derived from the logs from executing this command line:
journalctl -xe
Further information on the system I was running on:
PHP 7.0 and
CentOS 7
Not sure if it's not obvious, but the issue was Apache's configuration to writing files. I did try chmod 777, chmod a+w on the logging directory, but this didn't work for me.
Hope this can help somebody.
This did the trick for me.
setsebool -P httpd_unified 1
Please note, this would be the preferred method below to try first:
semanage fcontext -a -t httpd_sys_rw_content_t 'errorLogNameHere.error.log
restorecon -v 'errorLogNameHere.error.log'
This answer was derived from the logs from executing this command line:
journalctl -xe
Further information on the system I was running on:
PHP 7.0 and
CentOS 7
Not sure if it's not obvious, but the issue was Apache's configuration to writing files. I did try chmod 777, chmod a+w on the logging directory, but this didn't work for me.
Hope this can help somebody.
answered Nov 12 '17 at 8:59
fungusanthrax
12610
12610
add a comment |
add a comment |
up vote
0
down vote
Here is my troubleshooting guide to error_log()
calls not working.
Look at your server's configuration to find out where the default error log file is.
This depends on which server you're using. To get you started, have a look at Apache's
ErrorLog
option if you're using Apache or Nginx'serror_log
option if you're using Nginx. Make sure it is set to a file. If you're using a tool like Valet, note that it's using server software like Nginx behind the scenes.Check the permissions of your server's error log file.
On Unix-like systems, it should be writeable by the correct user and group, and the permissions of the parent directory and all its ancestors need to be correct as well. Use
chmod
andchown
.Check the configuration of PHP in the
.ini
files.Specifically, check for
log_errors = On
anderror_reporting = E_ALL | E_STRICT
anderror_log = /tmp/example/php_errors.log
(see docs forlog_errors
,error_reporting
anderror_log
configuration settings). To find the.ini
file, look at the output ofphpinfo();
. Iferror_log
is not set, by default it goes to the error log for the server, mentioned in the previous steps. Iferror_log
is set to a file, it should already exist and be writeable, just like in previous steps. Remember to restart the server after configuration changes.Check that PHP's settings aren't being changed by server configuration.
Your server's configuration (even
.htaccess
) can change PHP configuration settings. In Apache, this is done usingphp_admin_value
andphp_admin_flag
(docs). For instance, you may find in your.htaccess
file this line:php_admin_flag[log_errors] = off
. Remember to restart the server after configuration changes.At this point, you should be able to create a test file
test.php
with the contents<?php error_log("test");
, restart your server, and open the URL in your browser, and you should be able to seetest
in your error log (either the server's, or the one specified byerror_log =
). But keep reading.Check that PHP's settings aren't being changed at run-time.
The
log_errors
option can be changed at runtime by runningini_set('log_errors', 1);
, and so can the other configuration optionserror_reporting
anderror_log
. Also note there is a specialerror_reporting()
PHP function which changes the configuration at run-time. Search your code-base for any invocations ofini_set
orerror_reporting
. WordPress for example does run these depending on the value ofWP_DEBUG
.
Other things to look at: You may be having permission issues in SELinux (see this answer).
add a comment |
up vote
0
down vote
Here is my troubleshooting guide to error_log()
calls not working.
Look at your server's configuration to find out where the default error log file is.
This depends on which server you're using. To get you started, have a look at Apache's
ErrorLog
option if you're using Apache or Nginx'serror_log
option if you're using Nginx. Make sure it is set to a file. If you're using a tool like Valet, note that it's using server software like Nginx behind the scenes.Check the permissions of your server's error log file.
On Unix-like systems, it should be writeable by the correct user and group, and the permissions of the parent directory and all its ancestors need to be correct as well. Use
chmod
andchown
.Check the configuration of PHP in the
.ini
files.Specifically, check for
log_errors = On
anderror_reporting = E_ALL | E_STRICT
anderror_log = /tmp/example/php_errors.log
(see docs forlog_errors
,error_reporting
anderror_log
configuration settings). To find the.ini
file, look at the output ofphpinfo();
. Iferror_log
is not set, by default it goes to the error log for the server, mentioned in the previous steps. Iferror_log
is set to a file, it should already exist and be writeable, just like in previous steps. Remember to restart the server after configuration changes.Check that PHP's settings aren't being changed by server configuration.
Your server's configuration (even
.htaccess
) can change PHP configuration settings. In Apache, this is done usingphp_admin_value
andphp_admin_flag
(docs). For instance, you may find in your.htaccess
file this line:php_admin_flag[log_errors] = off
. Remember to restart the server after configuration changes.At this point, you should be able to create a test file
test.php
with the contents<?php error_log("test");
, restart your server, and open the URL in your browser, and you should be able to seetest
in your error log (either the server's, or the one specified byerror_log =
). But keep reading.Check that PHP's settings aren't being changed at run-time.
The
log_errors
option can be changed at runtime by runningini_set('log_errors', 1);
, and so can the other configuration optionserror_reporting
anderror_log
. Also note there is a specialerror_reporting()
PHP function which changes the configuration at run-time. Search your code-base for any invocations ofini_set
orerror_reporting
. WordPress for example does run these depending on the value ofWP_DEBUG
.
Other things to look at: You may be having permission issues in SELinux (see this answer).
add a comment |
up vote
0
down vote
up vote
0
down vote
Here is my troubleshooting guide to error_log()
calls not working.
Look at your server's configuration to find out where the default error log file is.
This depends on which server you're using. To get you started, have a look at Apache's
ErrorLog
option if you're using Apache or Nginx'serror_log
option if you're using Nginx. Make sure it is set to a file. If you're using a tool like Valet, note that it's using server software like Nginx behind the scenes.Check the permissions of your server's error log file.
On Unix-like systems, it should be writeable by the correct user and group, and the permissions of the parent directory and all its ancestors need to be correct as well. Use
chmod
andchown
.Check the configuration of PHP in the
.ini
files.Specifically, check for
log_errors = On
anderror_reporting = E_ALL | E_STRICT
anderror_log = /tmp/example/php_errors.log
(see docs forlog_errors
,error_reporting
anderror_log
configuration settings). To find the.ini
file, look at the output ofphpinfo();
. Iferror_log
is not set, by default it goes to the error log for the server, mentioned in the previous steps. Iferror_log
is set to a file, it should already exist and be writeable, just like in previous steps. Remember to restart the server after configuration changes.Check that PHP's settings aren't being changed by server configuration.
Your server's configuration (even
.htaccess
) can change PHP configuration settings. In Apache, this is done usingphp_admin_value
andphp_admin_flag
(docs). For instance, you may find in your.htaccess
file this line:php_admin_flag[log_errors] = off
. Remember to restart the server after configuration changes.At this point, you should be able to create a test file
test.php
with the contents<?php error_log("test");
, restart your server, and open the URL in your browser, and you should be able to seetest
in your error log (either the server's, or the one specified byerror_log =
). But keep reading.Check that PHP's settings aren't being changed at run-time.
The
log_errors
option can be changed at runtime by runningini_set('log_errors', 1);
, and so can the other configuration optionserror_reporting
anderror_log
. Also note there is a specialerror_reporting()
PHP function which changes the configuration at run-time. Search your code-base for any invocations ofini_set
orerror_reporting
. WordPress for example does run these depending on the value ofWP_DEBUG
.
Other things to look at: You may be having permission issues in SELinux (see this answer).
Here is my troubleshooting guide to error_log()
calls not working.
Look at your server's configuration to find out where the default error log file is.
This depends on which server you're using. To get you started, have a look at Apache's
ErrorLog
option if you're using Apache or Nginx'serror_log
option if you're using Nginx. Make sure it is set to a file. If you're using a tool like Valet, note that it's using server software like Nginx behind the scenes.Check the permissions of your server's error log file.
On Unix-like systems, it should be writeable by the correct user and group, and the permissions of the parent directory and all its ancestors need to be correct as well. Use
chmod
andchown
.Check the configuration of PHP in the
.ini
files.Specifically, check for
log_errors = On
anderror_reporting = E_ALL | E_STRICT
anderror_log = /tmp/example/php_errors.log
(see docs forlog_errors
,error_reporting
anderror_log
configuration settings). To find the.ini
file, look at the output ofphpinfo();
. Iferror_log
is not set, by default it goes to the error log for the server, mentioned in the previous steps. Iferror_log
is set to a file, it should already exist and be writeable, just like in previous steps. Remember to restart the server after configuration changes.Check that PHP's settings aren't being changed by server configuration.
Your server's configuration (even
.htaccess
) can change PHP configuration settings. In Apache, this is done usingphp_admin_value
andphp_admin_flag
(docs). For instance, you may find in your.htaccess
file this line:php_admin_flag[log_errors] = off
. Remember to restart the server after configuration changes.At this point, you should be able to create a test file
test.php
with the contents<?php error_log("test");
, restart your server, and open the URL in your browser, and you should be able to seetest
in your error log (either the server's, or the one specified byerror_log =
). But keep reading.Check that PHP's settings aren't being changed at run-time.
The
log_errors
option can be changed at runtime by runningini_set('log_errors', 1);
, and so can the other configuration optionserror_reporting
anderror_log
. Also note there is a specialerror_reporting()
PHP function which changes the configuration at run-time. Search your code-base for any invocations ofini_set
orerror_reporting
. WordPress for example does run these depending on the value ofWP_DEBUG
.
Other things to look at: You may be having permission issues in SELinux (see this answer).
answered Nov 8 at 11:16
Flimm
48.6k23130151
48.6k23130151
add a comment |
add a comment |
up vote
-3
down vote
Make sure and also set
display_errors = On
And try
error_reporting(E_ALL);
In your code. Often times I include a runtime error config script that turns errors on when I'm developing, and turns them back off when I'm not. It looks something roughly like this:
if ($debugmode == 'on')
error_reporting(E_ALL);
ini_set("display_errors", 1);
else
error_reporting(0);
ini_set("display_errors", 0);
Hope this helps.
** I didn't read that correctly, you want to log errors instead of display, in that case Chaos' answer is what you're looking for.
6
then please delete this post.
– mauris
Nov 5 '09 at 2:58
1
Hi Jeremy, thanks for the help. :)
– Jim
Nov 5 '09 at 3:03
then please either delete the post as @mauris said, or make a better edit: starting stating (ans emphasized please) that this doesn't answer to OP's question but to something else in case you've landed here because of that...
– Erdal G.
Mar 20 at 13:59
add a comment |
up vote
-3
down vote
Make sure and also set
display_errors = On
And try
error_reporting(E_ALL);
In your code. Often times I include a runtime error config script that turns errors on when I'm developing, and turns them back off when I'm not. It looks something roughly like this:
if ($debugmode == 'on')
error_reporting(E_ALL);
ini_set("display_errors", 1);
else
error_reporting(0);
ini_set("display_errors", 0);
Hope this helps.
** I didn't read that correctly, you want to log errors instead of display, in that case Chaos' answer is what you're looking for.
6
then please delete this post.
– mauris
Nov 5 '09 at 2:58
1
Hi Jeremy, thanks for the help. :)
– Jim
Nov 5 '09 at 3:03
then please either delete the post as @mauris said, or make a better edit: starting stating (ans emphasized please) that this doesn't answer to OP's question but to something else in case you've landed here because of that...
– Erdal G.
Mar 20 at 13:59
add a comment |
up vote
-3
down vote
up vote
-3
down vote
Make sure and also set
display_errors = On
And try
error_reporting(E_ALL);
In your code. Often times I include a runtime error config script that turns errors on when I'm developing, and turns them back off when I'm not. It looks something roughly like this:
if ($debugmode == 'on')
error_reporting(E_ALL);
ini_set("display_errors", 1);
else
error_reporting(0);
ini_set("display_errors", 0);
Hope this helps.
** I didn't read that correctly, you want to log errors instead of display, in that case Chaos' answer is what you're looking for.
Make sure and also set
display_errors = On
And try
error_reporting(E_ALL);
In your code. Often times I include a runtime error config script that turns errors on when I'm developing, and turns them back off when I'm not. It looks something roughly like this:
if ($debugmode == 'on')
error_reporting(E_ALL);
ini_set("display_errors", 1);
else
error_reporting(0);
ini_set("display_errors", 0);
Hope this helps.
** I didn't read that correctly, you want to log errors instead of display, in that case Chaos' answer is what you're looking for.
answered Nov 5 '09 at 2:54
Jeremy Morgan
2,7771721
2,7771721
6
then please delete this post.
– mauris
Nov 5 '09 at 2:58
1
Hi Jeremy, thanks for the help. :)
– Jim
Nov 5 '09 at 3:03
then please either delete the post as @mauris said, or make a better edit: starting stating (ans emphasized please) that this doesn't answer to OP's question but to something else in case you've landed here because of that...
– Erdal G.
Mar 20 at 13:59
add a comment |
6
then please delete this post.
– mauris
Nov 5 '09 at 2:58
1
Hi Jeremy, thanks for the help. :)
– Jim
Nov 5 '09 at 3:03
then please either delete the post as @mauris said, or make a better edit: starting stating (ans emphasized please) that this doesn't answer to OP's question but to something else in case you've landed here because of that...
– Erdal G.
Mar 20 at 13:59
6
6
then please delete this post.
– mauris
Nov 5 '09 at 2:58
then please delete this post.
– mauris
Nov 5 '09 at 2:58
1
1
Hi Jeremy, thanks for the help. :)
– Jim
Nov 5 '09 at 3:03
Hi Jeremy, thanks for the help. :)
– Jim
Nov 5 '09 at 3:03
then please either delete the post as @mauris said, or make a better edit: starting stating (ans emphasized please) that this doesn't answer to OP's question but to something else in case you've landed here because of that...
– Erdal G.
Mar 20 at 13:59
then please either delete the post as @mauris said, or make a better edit: starting stating (ans emphasized please) that this doesn't answer to OP's question but to something else in case you've landed here because of that...
– Erdal G.
Mar 20 at 13:59
add a comment |
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f1678009%2fphp-error-log-not-working%23new-answer', 'question_page');
);
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password