|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2008-03-26 07:46 UTC] php at stock-consulting dot com
[2012-03-31 02:04 UTC] yohgaki@php.net
[2012-03-31 02:04 UTC] yohgaki@php.net
-Status: Open
+Status: Wont fix
[2016-03-23 13:00 UTC] cmb@php.net
-Status: Wont fix
+Status: Re-Opened
[2016-03-23 13:00 UTC] cmb@php.net
[2017-01-10 08:31 UTC] kalle@php.net
-Status: Re-Opened
+Status: Suspended
[2017-01-10 08:31 UTC] kalle@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 04:00:01 2025 UTC |
Description: ------------ I encountered a problem where my Apache Child process would crash and be restarted. The crash happend for me when include and / or require (also the _once versions of these 2) were called to files which didn't exist. This should have resulted in a warning or a fatal error but instead the error was only appended in the Apache error log and the Apache child process crashed. After some searching i found out one of the php extensions was the culprit. I disabled all the extensions and tested the extensions in batches. Eventually only one extension was enabled (the php_blenc.dll extension which came with pecl-5.1.2-Win32.zip). The moment i disabled this extension everything worked the way it should. But if it was enabled the problem was back. Which version of Apache you use (Apache 1.3/2.0/2.2) doesn't matter. All of them have the same result. I'm using both the pecl 5.1.2 and php 5.1.2 binary releases from the www.php.net website Reproduce code: --------------- <?php echo 'test'; //lets generate some output to see whether the client browser receives any page include('non-existant_file.php'); ?> Expected result: ---------------- The client browser will not receive the page because the Apache child process would have restarted discarding all existing requests. Actual result: -------------- Apache error log [Thu Apr 20 17:43:03 2006] [notice] mod_security/1.9.3 configured [Thu Apr 20 17:43:04 2006] [notice] Apache/2.2.0 (Win32) PHP/5.1.2 configured -- resuming normal operations [Thu Apr 20 17:43:04 2006] [notice] Server built: Dec 11 2005 20:34:33 [Thu Apr 20 17:43:04 2006] [notice] Parent: Created child process 1048 [Thu Apr 20 17:43:05 2006] [notice] mod_security/1.9.3 configured [Thu Apr 20 17:43:06 2006] [notice] Child 1048: Child process is running [Thu Apr 20 17:43:06 2006] [notice] Child 1048: Acquired the start mutex. [Thu Apr 20 17:43:06 2006] [notice] Child 1048: Starting 25 worker threads. [Thu Apr 20 17:43:06 2006] [notice] Child 1048: Starting thread to listen on port 4716. [Thu Apr 20 17:44:37 2006] [error] [client 192.168.0.240] PHP Warning: include(non-existant_file.php) [<a href='http://www.php.net/manual/en/function.include.php'>function.include.php</a>]: failed to open stream: No such file or directory in H:\\webserver\\htdocs\\default\\blenc_bug.php on line 2 [Thu Apr 20 17:44:38 2006] [notice] Parent: child process exited with status 3221225477 -- Restarting. [Thu Apr 20 17:44:39 2006] [notice] Apache/2.2.0 (Win32) PHP/5.1.2 configured -- resuming normal operations [Thu Apr 20 17:44:39 2006] [notice] Server built: Dec 11 2005 20:34:33 [Thu Apr 20 17:44:39 2006] [notice] Parent: Created child process 4956 [Thu Apr 20 17:44:40 2006] [notice] mod_security/1.9.3 configured [Thu Apr 20 17:44:41 2006] [notice] Child 4956: Child process is running [Thu Apr 20 17:44:41 2006] [notice] Child 4956: Acquired the start mutex. [Thu Apr 20 17:44:41 2006] [notice] Child 4956: Starting 25 worker threads. [Thu Apr 20 17:44:41 2006] [notice] Child 4956: Starting thread to listen on port 4716.