ID: 36455 Updated by: [EMAIL PROTECTED] Reported By: haleden at colorado dot edu -Status: Open +Status: Feedback Bug Type: Apache related Operating System: redhat 7 PHP Version: 5.1.2 New Comment:
Works perfectly fine for me and N millions of PHP users. Apache 1.3.27 is very old, try to upgrade it first. And decribe in details what exactly did you do to reproduce it. Previous Comments: ------------------------------------------------------------------------ [2006-02-19 21:03:48] haleden at colorado dot edu oops, forgot to say that the changes go in: sapi/apache/mod_php5.c ... int php_apache_shutdown_wrapper(void) { apache_php_initialized = 0; /* apache_sapi_module.shutdown(&apache_sapi_module);*/ php_apache_request_shutdown(&apache_sapi_module); ... ------------------------------------------------------------------------ [2006-02-19 20:54:47] haleden at colorado dot edu Description: ------------ there are a bunch of reports out there that have been labeled "bogus" that i bet were not. i began to have problems starting apache 1.3.27 reliably after installing the php module. i found that if i commented out the php module, apache would start. then, if i went in and uncommented the php module, and did a apachectl restart, things were fine. i finally got some time to dig deeper, and ran it under gdb and found that it was crashing in a deep stack of nested calls to php_apache_shutdown_wrapper. looking at the source, i see that php_apache_shutdown_wrapper calls apache_sapi_module.shutdown which is defined to be php_apache_shutdown_wrapper. i suspect that at one time apache_sapi_module.shutdown pointed to php_apache_request_shutdown and things worked until someone decided that the wrapper should be called but forgot to change the wrapper to call php_apache_request_shutdown. as to why it was happening at startup, i conjecture that apache keeps track of modules in some way and if a module didn't shutdown cleanly before, it calls the shutdown hook to clean up before starting again. by starting it without the module, that check was cleared, and it would not run the shutdown hook the next time. i'm not an expert at all of this stuff, but i made the change to the wrapper and it seems to work--further testing and sanity checking advised. thanks, hal Reproduce code: --------------- see above description for apache config changes Expected result: ---------------- apache starts sucessfully each time when php module defined Actual result: -------------- apache doesn't always start successfully when php module defined ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=36455&edit=1