Re: MSIE problem with binary file download over SSL

From: Date: Tue, 08 Apr 2003 16:01:02 +0000
Subject: Re: MSIE problem with binary file download over SSL
References: 1 2 3 4  Groups: php.general 
Request: Send a blank email to php-general+get-142893@lists.php.net to get a copy of this message
Thanks guys, I'll look into this and let you know if it does the trick. "Marek Kilimajer" <kilimajer@webglobe.sk> wrote in message news:3E92D731.60705@webglobe.sk... > If your ISP will allow you to set it up in .htaccess file, you can set > it there, all your ISP can set it for your virtual host only > > Rich Choy wrote: > > >I'd like to try that, but my website is being hosted on someone else's > >server. I am not allowed to play around with /usr/local/lib/php.ini. Is > >there any way to manipulate the behavior of PHP so it uses a copy of php.ini > >that resides in my home directory instead? > > > >BTW I have really had it with IE. > > > >"John W. Holmes" <holmes072000@charter.net> wrote in message > >news:000401c2fd83$3dba5540$7c02a8c0@coconut... > > > > > >>Have you tried setting it in php.ini? > >> > >>---John W. Holmes... > >> > >>PHP Architect - A monthly magazine for PHP Professionals. Get your copy > >>today. http://www.phparch.com/ > >> > >> > >> > >>>-----Original Message----- > >>>From: Rich Choy [mailto:versace_74@hotmail.com] > >>>Sent: Monday, April 07, 2003 11:15 PM > >>>To: php-general@lists.php.net > >>>Subject: Re: [PHP] MSIE problem with binary file download over SSL > >>> > >>>John, > >>> > >>>Yep, I'm using sessions. I've tried the following for > >>>session_cache_limiter(): > >>> > >>> empty > >>> "none" > >>> "private" > >>> "private-no-expire" > >>> "public" > >>> > >>>None of them work. I am declaring session_cache_limiter() before > >>>session_start() in my script. > >>> > >>>Any ideas? > >>> > >>>-Rich > >>> > >>> > >>>"John W. Holmes" <holmes072000@charter.net> wrote in message > >>>news:002501c2fd72$0db8f740$7c02a8c0@coconut... > >>> > >>> > >>>>Are you using sessions? There is a "feature" in IE that'll mess > >>>>up > >>>>downloads over SSL when the session sends it's session.cache_limiter > >>>>value. If it's set to "nocache" then the download does not work. > >>>> > >>>> > >>Setting > >> > >> > >>>>it to "none" or empty will allow you to do the file download. > >>>> > >>>>---John W. Holmes... > >>>> > >>>>PHP Architect - A monthly magazine for PHP Professionals. Get your > >>>> > >>>> > >>copy > >> > >> > >>>>today. http://www.phparch.com/ > >>>> > >>>> > >>>> > >>>>>-----Original Message----- > >>>>>From: Rich Choy [mailto:versace_74@hotmail.com] > >>>>>Sent: Monday, April 07, 2003 8:47 PM > >>>>>To: php-general@lists.php.net > >>>>>Subject: [PHP] MSIE problem with binary file download over SSL > >>>>> > >>>>>Hi, > >>>>> > >>>>>I have a script that retrieves binary blob data from a database > >>>>> > >>>>> > >>and > >> > >> > >>>>sends > >>>> > >>>> > >>>>>it > >>>>>to the client browser via SSL. It works like a charm for all > >>>>> > >>>>> > >>browsers > >> > >> > >>>>>except > >>>>>for MSIE. I can assure you that the problem has nothing to do with > >>>>> > >>>>> > >>the > >> > >> > >>>>way > >>>> > >>>> > >>>>>I've set up my headers; after a bit of investigation I've figured > >>>>> > >>>>> > >>out > >> > >> > >>>>that > >>>> > >>>> > >>>>>MSIE has a problem with my script when it sends data over SSL. I > >>>>> > >>>>> > >>have > >> > >> > >>>>>tested > >>>>>the script with MSIE over a regular port 80 connection and the > >>>>> > >>>>> > >>>>download > >>>> > >>>> > >>>>>script works just fine. > >>>>> > >>>>>I am running Apache 1.3.6 + OpenSSL 0.9.6g + PHP 4.1.2. Does > >>>>> > >>>>> > >>anyone > >> > >> > >>>>know a > >>>> > >>>> > >>>>>workaround to this problem? I have looked all over the web to no > >>>>> > >>>>> > >>>>avail. > >>>> > >>>> > >>>>>Any > >>>>>help is appreciated. > >>>>> > >>>>>Thanks in advance, > >>>>> > >>>>>Rich > >>>>> > >>>>>Here's the download script: > >>>>> > >>>>>[begin php] > >>>>> > >>>>><? > >>>>> include("_srs/res_common_sdx_admin.inc"); > >>>>> include("_srs/res_auth_admin.inc"); > >>>>> > >>>>> $id = $_GET['id']; > >>>>> > >>>>> if ($id) { > >>>>> // if record id was specified > >>>>> > >>>>> @include("res_db.inc"); > >>>>> // connect to database > >>>>> > >>>>> $db_q['lit'] = "select * from sdx_literature where > >>>>> id = > >>>>> > >>>>> > >>$id"; > >> > >> > >>>>> $db_r['lit'] = mysql_query($db_q['lit']); > >>>>> > >>>>> if (mysql_num_rows($db_r['lit'])==1) { > >>>>> // if record exists > >>>>> > >>>>> $lit = mysql_fetch_array($db_r['lit']); > >>>>> // fetch literature record > >>>>> > >>>>> $file_description = $lit['description']; > >>>>> $file_name = $lit['filename']; > >>>>> $file_size = $lit['byte_size']; > >>>>> $mime_type = $lit['mime_type']; > >>>>> $binary_data = $lit['binary_data']; > >>>>> > >>>>> if (preg_match('/MSIE 5.5/', > >>>>> $_ENV['HTTP_USER_AGENT']) > >>>>> > >>>>> > >>|| > >> > >> > >>>>>preg_match('/MSIE 6.0/', $_ENV['HTTP_USER_AGENT'])) { > >>>>> > >>>>> header("Content-Disposition: > >>>>> > >>>>> > >>filename=$file_name"); > >> > >> > >>>>> header("Content-Type: application/zip"); > >>>>> // headers for MSIE > >>>>> > >>>>> } else { > >>>>> > >>>>> header("Content-Disposition: attachment; > >>>>>filename=$file_name"); > >>>>> header("Content-Type: $mime_type"); > >>>>> // headers for WC3-compliant clients > >>>>> > >>>>> } > >>>>> > >>>>> header("Content-Length:$file_size"); > >>>>> header("Content-Transfer-Encoding: binary"); > >>>>> header("Content-Description: $file_description"); > >>>>> // common headers > >>>>> > >>>>> echo $binary_data; > >>>>> // send binary data to client > >>>>> > >>>>> } else { > >>>>> // if record does not exist > >>>>> > >>>>> $_SESSION['msg'] = "Invalid literature record > >>>>> ID."; > >>>>> // error message > >>>>> > >>>>> } > >>>>> > >>>>> } else { > >>>>> // if record id was not specified > >>>>> > >>>>> $_SESSION['msg'] = "The script you are trying to > >>>>> access > >>>>> > >>>>> > >>>>requires a > >>>> > >>>> > >>>>>valid literature record ID."; > >>>>> // error message > >>>>> > >>>>> } > >>>>> > >>>>> header("Location: error.php"); > >>>>> // redirect to error notification script > >>>>> > >>>>> > >>>>>?> > >>>>>[end php] > >>>>> > >>>>> > >>>>> > >>>>> > >>>>> > >>>>>-- > >>>>>PHP General Mailing List (http://www.php.net/) > >>>>>To unsubscribe, visit: > >>>>>http://www.php.net/unsub.php > >>>>> > >>>>> > >>>> > >>>> > >>>> > >>> > >>>-- > >>>PHP General Mailing List (http://www.php.net/) > >>>To unsubscribe, visit: http://www.php.net/unsub.php > >>> > >>> > >> > >> > >> > > > > > > > > > > >

« previous php.general (#142893) next »