Re: MSIE problem with binary file download over SSL
| From: | Rich Choy | 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
> >>>
> >>>
> >>
> >>
> >>
> >
> >
> >
> >
> >
>