ID:               44596
 Updated by:       [EMAIL PROTECTED]
 Reported By:      php at timkoop dot com
-Status:           Open
+Status:           Feedback
 Bug Type:         Reproducible crash
 Operating System: Windows NT WEBSERVER 5.2 build 3
 PHP Version:      5.2.5
 Assigned To:      fb-req-jani
 New Comment:

For starters, try the snapshot (it's upcoming 5.2.6RC actually):

Zip: http://snaps.php.net/win32/php5.3-win32-latest.zip
or
Installer):
http://snaps.php.net/win32/php5.3-win32-installer-latest.msi

And make sure you have _all_ 3rd party Zend extensions disabled in your
php.ini. For example Zend optimizer, any opcode caches, debugger (like
Xdebug), etc. 


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

[2008-04-02 19:30:11] php at timkoop dot com

I don't have APC installed.  I used to have EAccelerator installed, but
it isn't now.  My php.ini file has no major differences to the one that
came with 5.2.5.

As to how sure I am, all I know is that when exit() is called in the
auto prepended file, PHP crashes in about 485 page requests and when it
is not there everything works fine.

Thanks so much for looking into this.  If there is anything more I can
provide, please just say the word.

--
Tim

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

[2008-04-02 09:29:28] [EMAIL PROTECTED]

And you're absolutely 100% sure it's exit() in auto prepended file that
causes this? Do you by any chance have APC installed and enabled when
this happens?

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

[2008-04-01 20:07:14] php at timkoop dot com

Description:
------------
When using an auto_prepend file, if you call exit() in this prepended
file, it works fine for a while.  But after about 400 or 500 or 600
times calling any php page on the website, you receive a simple "No
input file specified".  And every site in IIS also displays this message
on php pages.

This page describes why you would want to do this:
http://www.ilovejackdaniels.com/php/caching-output-in-php/

Reproduce code:
---------------
In php.ini, set an auto_prepend file like this:
auto_prepend_file = prepend.php

In prepend.php, put something like this:
<?
echo "<html><body>This comes from prepend.php</body></html>";
exit();
?>

(Actually, this above code might have to be in an included file that
was called from prepend.php)

Now you have to call any page in the website a few hundred times before
the error kicks in.  The first few times will appear to work as
expected.  A small bash script to do this for you might look like this
(for your convenience only; not a part of the bug):

for ((i=1;i<=1000;i+=1)); do
echo $i
wget http://yoursite.com/anyfile.php --quiet
--output-document=/dev/null
done


Expected result:
----------------
I would expect the prepended file to produce the following code and the
actual called file would not produce anything, so this would be the
entire html returned no matter what file you called:

<html><body>This comes from prepend.php</body></html>


This does actually work the first few hundred times.

Actual result:
--------------
The expected result is returned (correctly) a few hundred times.  Then
after that, the following line is returned:

No input file specified.

After this, IIS must be restarted to get back to normal.

I will happily provide a backtrace if needed.


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


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

Reply via email to