Hi guys,
Based on a recent experiance after doing a clean install of windows and ie7 etc, it would seem that ie has a problem downloading files over a ssl connection by default. When you try to download the file ie gives an error that it was unable to connect to the site or file. I made sure all windows and ie updates were up to date but the problem was still there.
The problem can be fixed by applying a patch to ie, which I have done and it all works ok now.
Is it possible to do anything on the script or server side of things to stop this happening so that the end user doesn't have to patch ie for ssl downloads?
Cheers
XFileSharing Free - IE SSL download problem
Re: IE SSL download problem
Bassman wrote:Hi guys,
Based on a recent experiance after doing a clean install of windows and ie7 etc, it would seem that ie has a problem downloading files over a ssl connection by default. When you try to download the file ie gives an error that it was unable to connect to the site or file. I made sure all windows and ie updates were up to date but the problem was still there.
The problem can be fixed by applying a patch to ie, which I have done and it all works ok now.
Is it possible to do anything on the script or server side of things to stop this happening so that the end user doesn't have to patch ie for ssl downloads?
Cheers
What was your IE version before and what is the current version? What is download linke you got error for?
Thanks
This problem can happen on all versions of IE explorer and is documented here:-
http://support.microsoft.com/kb/323308
This is the error I get after a fresh install of windows XP and Explorer 7
The same message on a different computer running Explorer 6. I have also tested it on 4 other machines where I know internet explorer has not been patched and the problem was on all of them.
Internet Explorer cannot download file from server.
Internet Explorer was not able to open this Internet site. The requested site is either unavailable or cannot be found. Please try again later.
It happens on all download links, if you take the (s) off the https:// it will download ok, so it is just the ssl download.
The registery patch I applied contains the folling info
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"DisableCachingOfSSLPages"=dword:00000000
"BypassSSLNoCacheCheck"=dword:00000001
"BypassHTTPNoCacheCheck"=dword:00000001
"SSLPragmaNoCache"=dword:00000001
This fixes the problem after it has been applied and the machine is rebooted on both IE 6 & 7
It is a bit of a strange one as I have had some users say that they have had no problems downloading files with explorer, when I ask if they have ever applied a patch, they answer no. But recently one of my users brought it to my attention which is why I started with a format and a fresh install of XP in order to test it from a default starting point.
Asking the end user to apply a patch that modifies their registery is something I would like to avoid at all costs if possible.
Hope this helps a bit
Many Thanks
ps: I am testing on IE7 V 7.0.5730.11
and IE6 V6.0.2900.2180.xpsp_2gdr.050301-1519
http://support.microsoft.com/kb/323308
This is the error I get after a fresh install of windows XP and Explorer 7
The same message on a different computer running Explorer 6. I have also tested it on 4 other machines where I know internet explorer has not been patched and the problem was on all of them.
Internet Explorer cannot download file from server.
Internet Explorer was not able to open this Internet site. The requested site is either unavailable or cannot be found. Please try again later.
It happens on all download links, if you take the (s) off the https:// it will download ok, so it is just the ssl download.
The registery patch I applied contains the folling info
REGEDIT4
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"DisableCachingOfSSLPages"=dword:00000000
"BypassSSLNoCacheCheck"=dword:00000001
"BypassHTTPNoCacheCheck"=dword:00000001
"SSLPragmaNoCache"=dword:00000001
This fixes the problem after it has been applied and the machine is rebooted on both IE 6 & 7
It is a bit of a strange one as I have had some users say that they have had no problems downloading files with explorer, when I ask if they have ever applied a patch, they answer no. But recently one of my users brought it to my attention which is why I started with a format and a fresh install of XP in order to test it from a default starting point.
Asking the end user to apply a patch that modifies their registery is something I would like to avoid at all costs if possible.
Hope this helps a bit
Many Thanks
ps: I am testing on IE7 V 7.0.5730.11
and IE6 V6.0.2900.2180.xpsp_2gdr.050301-1519
- PilgrimX182
- Posts: 2186
- Joined: Mar 22, 2006 1:39 pm
In index.cgi find line
and add below
try to download after this change(if you have any other computer without fix)
If no help, try this: in upload.cgi find
and comment it with '#'
then in Templates/download.html replace
with
Code: Select all
print"Cache-Control: no-cache, must-revalidate\n";
Code: Select all
print"Cache-Control: no-cache\n";
print"Cache-Control: no-store\n";
If no help, try this: in upload.cgi find
Code: Select all
&UploadForm unless $ENV{REQUEST_METHOD} eq 'POST';
then in Templates/download.html replace
Code: Select all
method="POST"
Code: Select all
method="GET" action="<TMPL_VAR site_url>"
Hi Pilgrim
Thanks for your help.
The first method made no difference.
The second method: I don't have the line in upload.cgi
&UploadForm unless $ENV{REQUEST_METHOD} eq 'POST';
I have a section like this
### Sending data with POST request if need
my $url_post = "$c->{site_url}/" || $ENV{HTTP_REFERER};
if($url_post)
{
if($url_post=~/\.htm(l|)$/i)
{
print"Content-type: text/html\n\n";
print"<HTML><HEAD><Script>parent.document.location='$url_post'</Script></HEAD></HTML>";
exit;
}
if($ENV{QUERY_STRING}!~/js_on=1/)
{
$url_post.='?';
$url_post.="\&$_->{name}=$_->{value}" for @har;
print $cg->redirect( $url_post );
exit;
}
push @har, { name=>'act', value=>'upload_result' };
print"Content-type: text/html\n\n";
print"<HTML><BODY><Form name='F1' action='$url_post' target='_parent' method='POST'>";
print"<textarea name='$_->{name}'>$_->{value}</textarea>" for @har;
print"</Form><Script>document.location='javascript:false';document.F1.submit();</Script></BODY></HTML>";
exit;
}
print"Content-type: text/html\n\n";
print"Upload complete.";
exit;
I am not sure what to change
Thanks for any further help in advance
Cheers
Thanks for your help.
The first method made no difference.
The second method: I don't have the line in upload.cgi
&UploadForm unless $ENV{REQUEST_METHOD} eq 'POST';
I have a section like this
### Sending data with POST request if need
my $url_post = "$c->{site_url}/" || $ENV{HTTP_REFERER};
if($url_post)
{
if($url_post=~/\.htm(l|)$/i)
{
print"Content-type: text/html\n\n";
print"<HTML><HEAD><Script>parent.document.location='$url_post'</Script></HEAD></HTML>";
exit;
}
if($ENV{QUERY_STRING}!~/js_on=1/)
{
$url_post.='?';
$url_post.="\&$_->{name}=$_->{value}" for @har;
print $cg->redirect( $url_post );
exit;
}
push @har, { name=>'act', value=>'upload_result' };
print"Content-type: text/html\n\n";
print"<HTML><BODY><Form name='F1' action='$url_post' target='_parent' method='POST'>";
print"<textarea name='$_->{name}'>$_->{value}</textarea>" for @har;
print"</Form><Script>document.location='javascript:false';document.F1.submit();</Script></BODY></HTML>";
exit;
}
print"Content-type: text/html\n\n";
print"Upload complete.";
exit;
I am not sure what to change
Thanks for any further help in advance
Cheers
- PilgrimX182
- Posts: 2186
- Joined: Mar 22, 2006 1:39 pm
Oh, I'm sorry I told you wrong .cgi: should edit index.cgi not upload.cgi
One more change for index.cgi: remove this old line
One more change for index.cgi: remove this old line
Code: Select all
print"Cache-Control: no-cache, must-revalidate\n";
Hi Pilgrim
Thanks again
I tried what you said and I am afraid both methods didn't work, however thanks to your guidance i think i might have come up with a solution that works..
I added extra \n on the line below and then commented out the 2 lines following it, in the original index.cgi
print"Content-length: $fsize\n\n";
#print"Cache-Control: no-cache, must-revalidate\n";
#print"Pragma: no-cache\n\n";
So we now are sending no cache settings?
This seems to have fixed the issue and works with the default settings in IE, but can you tell me if what I have done is ok or will have diverse effects somewhere else?
cheers
Thanks again
I tried what you said and I am afraid both methods didn't work, however thanks to your guidance i think i might have come up with a solution that works..
I added extra \n on the line below and then commented out the 2 lines following it, in the original index.cgi
print"Content-length: $fsize\n\n";
#print"Cache-Control: no-cache, must-revalidate\n";
#print"Pragma: no-cache\n\n";
So we now are sending no cache settings?
This seems to have fixed the issue and works with the default settings in IE, but can you tell me if what I have done is ok or will have diverse effects somewhere else?
cheers
- PilgrimX182
- Posts: 2186
- Joined: Mar 22, 2006 1:39 pm