adrian zaharia wrote: > Hi, > > I am testing the following code that pushes a file to the browser > (Apache 1.3 + PHP 4.3.8 but tested also under several other configs) > > Try it with a BIG test1.zip (e.g. 100M in size) > > <?php > ignore_user_abort(); > set_time_limit(0); > > session_save_path('/tmp'); > session_start(); > > $sFileName = 'test1.zip'; > $sFileDir = '/var/www/html/'; > > header("Content-Type: application/octet-stream"); > header("Content-Disposition: attachment;filename=\"" . $sFileName . "\""); > header("Content-Length: " . filesize($sFileDir . $sFileName)); > header('Pragma: cache'); > header('Cache-Control: public, must-revalidate, max-age=0'); > header('Connection: close'); > header('Expires: ' . date('r', time()+60*60)); > header('Last-Modified: ' . date('r', time())); > > $oFp = fopen($sFileDir . $sFileName, "rb"); > $iReadBufferSize = 512; > while (!feof($oFp)) { > echo fread ($oFp, $iReadBufferSize); > } > fclose ($oFp); > exit; > > ?> > > What i discovered is that if i keep the 2 session initialisation functions > the script will work ONLY if the allocated memory is greater than the size > of the tested file. If i remove the session functions the script works > fine > even if the test1.zip file is very big (hundreds of Megs) > > Is it something i do wrong? Or is a bug and i should report it? > > I mention that I NEED the 2 functions so removing them is not THE > solution. > Nor setting in php.ini a huge memory limit :( This naive reader would suggest filing a bug report... At least, *I* don't think it should behave this way. http://bugs.php.net -- Like Music? http://l-i-e.com/artists.htm -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php