ID: 35096 Comment by: tmelzer at tomesoft dot de Reported By: rob at burningsoda dot com Status: Feedback Bug Type: Apache2 related Operating System: FreeBSD 6.0RC1 PHP Version: 4CVS-2005-11-04 (snap) New Comment:
Further analyzes have shown me that the fix in 4.4.x-dev was in sapi/apache2handler/sapi_apache2.c in function php_handler to guard against the member 'handler' on struct request_rec of beeing NULL and then accessing it. This was fixed in only one case where around line 518 'if (parent_req && parent_req->handler && ...'. After I added an r->handler && strcmp ... to the other places where the structure member is used the crash went away but I got a 404 - file not found error. I think this is related to the fact that I'm not sure what to do if several of this if () statements are evalute false i.e. what to place in the else block. Previous Comments: ------------------------------------------------------------------------ [2005-11-04 22:57:08] [EMAIL PROTECTED] I want you to try the PHP 5 snapshot because I want to be sure this is only happening with PHP 4. In which case we have better chance of figuring out what fix to backport from PHP 5. On the other hand, if this also happens with PHP 5, we really need to know since we're about to release PHP 5.1 and it would be nice to fix this kind of things before the release.. ------------------------------------------------------------------------ [2005-11-04 20:04:37] rob at burningsoda dot com sniper, This problem occurs only when using PHP 4.4.1 and the PHP 4-snapshots _and_ apache 2.x. Why should I try a 5.x-snapshot? Do I misunderstand you? ------------------------------------------------------------------------ [2005-11-04 09:25:24] [EMAIL PROTECTED] Please try using this CVS snapshot: http://snaps.php.net/php5-latest.tar.gz For Windows: http://snaps.php.net/win32/php5-win32-latest.zip ------------------------------------------------------------------------ [2005-11-04 02:49:53] rob at burningsoda dot com Description: ------------ I just downloaded Stable (4.4.x-dev) Built On: Nov 03, 2005 23:51 GMT and built it: PHP 4.4.2-dev (cli) (built: Nov 4 2005 02:17:10) But it seems like, the following bug is _not_ fixed in that snapshot: http://bugs.php.net/bug.php?id=35059 This happens with _any_ RewriteRule I use. Reproduce code: --------------- Try to use mod_rewrite on Apache 2.x to modify any URL. Small test case: index.php: <?php echo($_GET['myarg']); ?> RewriteRule: RewriteRule ^(.+)/$ index.php?myarg=$1 [L] URLs to try: 1. http://localhost/index.php?myarg=bla 2. http://localhost/blub/ 3. http://localhost/index.php/ Expected result: ---------------- In all three cases a document should be delivered: 1. "bla" 2. "blub" 3. "index.php" Actual result: -------------- 1. Correctly delivers document. 2. No document is delivered. 3. Correctly delivers document. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=35096&edit=1