Bug #13601: File download with Content-Length specified fails with IE5.5

From: Date: Mon, 08 Oct 2001 17:52:26 +0000
Subject: Bug #13601: File download with Content-Length specified fails with IE5.5
Groups: php.dev 
Request: Send a blank email to php-dev+get-67560@lists.php.net to get a copy of this message
From: adam@net-europa.com Operating system: Linux (Red Hat 7) PHP version: 4.0.6 PHP Bug Type: Apache related Bug description: File download with Content-Length specified fails with IE5.5 The following code: $size = filesize($file); header("Pragma: no-cache");// HTTP/1.0 header("Cache-Control: no-cache, must-revalidate");// HTTP/1.1 header("Content-Type: application/octet-stream"); if(preg_match("/MSIE 5.5/", $HTTP_USER_AGENT)) header("Content-Disposition: filename=$userfile"); else header("Content-Disposition: attachment; filename=$userfile"); header("Content-Length: $size"); header("Content-Transfer-Encoding: binary\n"); fpassthru($fp); when run under Linux/Apache results in a zero length file on MS IE 5.5 when connecting via an ISP or proxy. I have tried various ISPs all with the same result. All is fine with Netscape, or with a direct LAN connection. Also, if the same PHP script is run under Windows NT 4.0 / IIS 5.0 all is well. By removing the line: header("Content-Length: $size"); the download is successful, but we lose any progress bar so this workaround is far from ideal. -- Edit bug report at: http://bugs.php.net/?id=13601&edit=1

« previous php.dev (#67560) next »