Apache/PHP4/SSL, downloads fail with IE 5.5 only when using sessions

From: Date: Fri, 04 May 2001 21:56:33 +0000
Subject: Apache/PHP4/SSL, downloads fail with IE 5.5 only when using sessions
Groups: php.general 
Request: Send a blank email to php-general+get-51480@lists.php.net to get a copy of this message
Hi all, A customer has a problem. They've installed "Merlin" from Abriasoft. It is a pre-built Apache/PHP/SSL/MySQL/... package. Their problem is that they can't download files from my PHP application (which uses sessions) using IE 5.5 in Windows. Netscape works from all clients, IE 4 works, Mac clients work. Here's a sample php script that fails: <?php // simple download test but starts a session session_start(); session_register('rausch'); $rausch="testing"; $x = array(); $x = stat( "simple.pdf" ); header( "Content-Length: " . $x[7] ); header( "Accept-Ranges: bytes" ); header( "Connection: close" ); header( "Content-Type: application/pdf" ); readfile( "simple.pdf" ); ?> If I take out the session lines of code, it works fine. The symptom when it fails is that the dialog box for "open" or "save" comes up but no matter which choice you make nothing ever happens. If I comment out the session stuff in the .php script, IE just launches Acrobat and downloads and displays the file like it should. What am I doing wrong or what can I do to work around this problem? The portions of their php.ini file that deal with sessions: [Session] session.save_handler = files ; handler used to store/retrieve data session.save_path = /tmp ; argument passed to save_handler ; in the case of files, this is the ; path where data files are stored session.use_cookies = 1 ; whether to use cookies session.name = PHPSESSID ; name of the session ; is used as cookie name session.auto_start = 0 ; initialize session on request startup session.cookie_lifetime = 0 ; lifetime in seconds of cookie ; or if 0, until browser is restarted session.cookie_path = / ; the path the cookie is valid for session.cookie_domain = ; the domain the cookie is valid for session.serialize_handler = php ; handler used to serialize data ; php is the standard serializer of PHP session.gc_probability = 1 ; percentual probability that the ; 'garbage collection' process is started ; on every session initialization session.gc_maxlifetime = 1440 ; after this number of seconds, stored ; data will be seen as 'garbage' and ; cleaned up by the gc process session.referer_check = ; check HTTP Referer to invalidate ; externally stored URLs containing ids session.entropy_length = 0 ; how many bytes to read from the file session.entropy_file = ; specified here to create the session id ; session.entropy_length = 16 ; session.entropy_file = /dev/urandom session.cache_limiter = nocache ; set to {nocache,private,public} to ; determine HTTP caching aspects session.cache_expire = 180 ; document expires after n minutes Thanks, Bill --- Bill Rausch, Software Development, Unix, Mac, Windows Numerical Applications, Inc. 509-943-0861 bill@numerical.com

« previous php.general (#51480) next »