Wave Server downloads from InternetExplorer over SSL

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Wave Server downloads from InternetExplorer over SSL

Alexander Augustin

Hi all,

 

we had problems downloading files using the InternetExplorer from our wiki (WikiWorks4SSP)

which is only accessible via SSL.

 

The cause for this is that the InternetExplorer has problems with downloads over SSL when the no-cache or no-store option

os set in the CacheControl pragma in the response-headers generated by the server.

A detailed problem description can be found here: http://support.microsoft.com/default.aspx?scid=kb;en-us;323308

 

Inspite of forcing all user of the wiki to use another browser(or download manager) or do whatever is needed to make it work in IE,

we tried to find the creator of the pragma and checked whether there is a way to disable it for downloads.

 

The Cache-Control pragma is generated by WebAnswer>> sendCacheDirectiveHeadersOver:

We found that overriding the method in InternetMediaAnswer (a subclass of WebAnser) only removing the ‘no-cache’ option but leaving
all other ones (must-revalidate proxy-revalidate) in place helps.

 

I am not an expert concerning such things so I wanted to ask about possible side effects or better solutions.

Well, maybe it might cause clients to get a cached version of a download while a new one is already available.?
Maybe a “max-age=0” directive should be added to the headers.?

 

Best regards,

Alexander Augustin

Reply | Threaded
Open this post in threaded view
|

Re: Wave Server downloads from InternetExplorer over SSL

Alan Knight-2
Actually if you're using servlets/SSPs I'd expect that #setUpHeaders would be the place you'd want to look at rather than #sendCacheDirectiveHeadersOver:. In fact, I wouldn't expect the latter to be called at all for servlets or server pages.

The #setUpHeaders method will not override headers that have already been set, so if you make your servlets/server pages set the cache control to public, then it should not try to set the no-cache option. In fact, downloading through the Web Toolkit would normally go through the WebSiteFile servlet, which does explicitly set cache control public, at least in 7.4 or higher. So perhaps you're using a different mechanism to serve the file, or an older version.

I think your speculations as to side effects are probably right. Users might get a cached version of the file. The WebSiteFile servlet does send a Last-Modified header, which might deal with that, and also sets an expire time of 1 day.

At 07:09 AM 7/19/2006, Alexander Augustin wrote:
Hi all,
 
we had problems downloading files using the InternetExplorer from our wiki (WikiWorks4SSP)
which is only accessible via SSL.
 
The cause for this is that the InternetExplorer has problems with downloads over SSL when the no-cache or no-store option
os set in the CacheControl pragma in the response-headers generated by the server.
A detailed problem description can be found here:
http://support.microsoft.com/default.aspx?scid=kb;en-us;323308
 
Inspite of forcing all user of the wiki to use another browser(or download manager) or do whatever is needed to make it work in IE,
we tried to find the creator of the pragma and checked whether there is a way to disable it for downloads.
 
The Cache-Control pragma is generated by WebAnswer>>
sendCacheDirectiveHeadersOver:
We found that overriding the method in InternetMediaAnswer (a subclass of WebAnser) only removing the ‘no-cache’ option but leaving
all other ones (must-revalidate proxy-revalidate) in place helps.
 
I am not an expert concerning such things so I wanted to ask about possible side effects or better solutions.
Well, maybe it might cause clients to get a cached version of a download while a new one is already available.?
Maybe a “max-age=0” directive should be added to the headers.?
 
Best regards,
Alexander Augustin

--
Alan Knight [|], Cincom Smalltalk Development

"The Static Typing Philosophy: Make it fast. Make it right. Make it run." - Niall Ross