ID:               35096
 Updated by:       [EMAIL PROTECTED]
 Reported By:      rob at burningsoda dot com
 Status:           Open
 Bug Type:         Apache2 related
 Operating System: *
 PHP Version:      5CVS, 4CVS (2005-11-04) (snap)
 New Comment:

FYI: SCRIPT_FILENAME != PHP_SELF



Previous Comments:
------------------------------------------------------------------------

[2005-11-07 13:52:06] rob at burningsoda dot com

As a further note, $_SERVER['PHP_SELF'] contains "/phpbug/index.php/"
if URL-rewriting took place while $_SERVER['SCRIPT_NAME'] correctly
returns "/phpbug/index.php". This happens even with output buffering
disabled and leads to the conclusion, that the original bug is not in
the buffering code.

Beware! This fact (PHP_SELF != SCRIPT_NAME or PHP_SELF nonexistant) can
lead to extremely subtle bugs.

------------------------------------------------------------------------

[2005-11-07 12:35:21] rob at burningsoda dot com

After rebuilding Apache2 and PHP5-dev on different machines the whole
weekend about 2 million times and wondering why some showed the bug,
some not, I eventually tracked it down to the following simple
configuration setting (*drum roll*):

*** output_buffering ***

To trigger the bug, set "output_buffering = On" or (e.g.)
"output_buffering = 4096", TO BYPASS THE BUG (listen up, bug plagued
Joomla!/Wordpress/etc. users) SET "output_buffering = Off" in your
php.ini. This bypass works for PHP 4 & 5.

Cheers,
rob.

PS: If I extend my testcase to

<?php ob_start(); echo($_GET['myarg']); ob_end_flush(); ?>

with "output_buffering = Off" that still does _not_ trigger the bug.
Maybe that helps.

------------------------------------------------------------------------

[2005-11-06 22:41:36] free4cd at yahoo dot de

Same Problem with PHP 4.4.1 and 5.1 snapshots.
If rewrite is enabled you get a blank page. No error in log file or
else.

Problem with Joomla and vBulletin/vBSEO if rewrite engine is turned on.
If rewrite is disabled all works fine.

My .htaccess for Joomla:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php

------------------------------------------------------------------------

[2005-11-06 19:47:49] remko at elvandar dot org

I had similiar problems with apache2+mod_rewrite and php 
4.4.1. All sites that made use of mod_rewrite broke and gave 
a white page (nothing in the error log though), all other 
sites that use php but not mod_rewrite were working 
perfectly.

my .htaccess:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php

------------------------------------------------------------------------

[2005-11-06 16:29:08] brian dot white at foxfire74 dot com

I have a WordPress powerered blog and get it for ANY rewrite rule.

Here is a stripped down version of my .htaccess:
-----------------------------------------------
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [S=75]
RewriteRule ^search/(.+)/?$ /blog/index.php?s=$1 [QSA,L]
RewriteRule ^category/(.+)/?$ /blog/index.php?category_name=$1 [QSA,L]
RewriteRule ^author/([^/]+)/?$ /blog/index.php?author_name=$1 [QSA,L]
RewriteRule ^([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/?$
/blog/index.php?year=$1&monthnum=$2&day=$3 [QSA,L]
RewriteRule ^([0-9]{4})/([0-9]{1,2})/?$
/blog/index.php?year=$1&monthnum=$2 [QSA,L]
RewriteRule ^([0-9]{4})/?$ /blog/index.php?year=$1 [QSA,L]
RewriteRule ^([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/([^/]+)(/[0-9]+)?/?$
/blog/index.php?year=$1&monthnum=$2&day=$3&name=$4&page=$5 [QSA,L]
</IfModule>

# END WordPress

Here what was requested in the browser:
--------------------------------------
http://.../blog/2005/10/31/happy-halloween/

Here is what shows up in the logs:
---------------------------------
[Mon Oct 31 23:25:42 2005] [error] PHP Warning: 
main(./wp-blog-header.php): failed to open stream: No such file or
directory in C:\\...\\wordpress\\index.php on line 4
[Mon Oct 31 23:25:42 2005] [error] PHP Fatal error:  main(): Failed
opening required './wp-blog-header.php'
(include_path='.;c:\\php4\\pear') in C:\\...\\wordpress\\index.php on
line 4

Result:
------
The browser displays a blank page since PHP blows up.

Using:
-----
PHP 4.4.1
Windows XP SP2
Apache/2.0.55 (Win32) PHP/4.4.1 
php4apache2.dll

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/35096

-- 
Edit this bug report at http://bugs.php.net/?id=35096&edit=1

Reply via email to