|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2003-01-19 14:34 UTC] php at lost dot co dot nz
If the special global $_SERVER['PATH_INFO'] is accessed in scripts on either my test or production server when it is not set (on load of home page usually) it causes Apache to segfault intermittently (like 1/100 page views...).
eg, this is what caused me grief:
if( $_SERVER['PATH_INFO'] == 'whatever')
include( 'whatever_else');
Wrapping in call to 'isset' stopped crashes:
if( isset($_SERVER['PATH_INFO']) )
if( $_SERVER['PATH_INFO'] == 'whatever')
include( 'whatever_else');
Was really hard to reproduce. In the end I sat at a split screen comparing the error to the access log, second by second. The error log was reporting ~100-300 segfaults a day untill I used the call to isset, when that dropped to zero. (After a fun 6 hours trying to catch it with gdb...)
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 22:00:01 2025 UTC |
Sounds pretty unlikely for the crash being caused by unset variable/array index. And btw. If you conditionally include() files, then you MUST use { } with the clauses: http://www.php.net/manual/en/function.include.php (Example 12-6) Maybe this caused the crashes?