ID: 19886 Comment by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Status: Feedback Bug Type: Filesystem function related Operating System: Windows, any Version PHP Version: 4CVS-2002-10-13 New Comment:
I have a simmilar problem on windows 2000 Server with IIS4. I use this script (just a part): header("Content-type: Download"); header("Content-Disposition: attachment; filename=".$Data->SWFileName); $fp = fopen ($GLOBALS['FileLocation'].$Data->SWFileName, "rb"); fpassthru($fp); The problem is that on our development machine (Linux) everything works like a charm, but on our "Production" server with Win2k Server & IIS not. There is a small JavaScript which calls the file sending script usimg window.location='getfile.php?fileid=56' The problem place is that the time between request and displaying the "save" dialog is very large. (1-2 minutes or so) I can't get it to execute faster. I will try to use the fread(). Later SelfMan Previous Comments: ------------------------------------------------------------------------ [2002-10-13 19:06:50] [EMAIL PROTECTED] I just fixed (I hope) a socket-shutdown bug (#16114). The interesting thing is that this is only to do with writes to sockets opened by streams (so it should not affect PHP output). It might be that the Microweb server also has a similar bug, or that it has some other threading issue. It doesn't make sense for this to be related solely to streams, as they aren't time-dependent, and they are certainly not dependent on other PHP processes. Can you try reproducing the problem using Apache, PWS or IIS? Can anyone reproduce this on another platform? ------------------------------------------------------------------------ [2002-10-13 17:21:54] [EMAIL PROTECTED] Did this work in any previous versions of PHP? Is it stricly win32 thing? Does this workin in e.g. Linux? ------------------------------------------------------------------------ [2002-10-13 10:40:41] [EMAIL PROTECTED] May be its because that the stream hasn't enough time to get its new position. I didn't read streams.c/h well enough too. ------------------------------------------------------------------------ [2002-10-13 10:30:31] [EMAIL PROTECTED] In addition [frame1.php] <? // Adding sleep(5) will solve the problem the first time a // >100k File is called. The next output of a >100k File // will crash again... sleep(5); header("Content-type: application/pdf\n"); readfile("some_100k_large.pdf"); ?> ------------------------------------------------------------------------ [2002-10-13 10:22:32] [EMAIL PROTECTED] That last comment should let us open it back. Removing the "big-files-passthrough" let the scripts run properly. @Wez: can you check it? may be its because of the position of the stream at the end of the execution of the first checksize? ------------------------------------------------------------------------ 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/19886 -- Edit this bug report at http://bugs.php.net/?id=19886&edit=1