[ic] IE caching problems?

Ron Phipps [email protected]
Fri, 2 Feb 2001 11:38:42 -0800

> Nope. It uses a more reliable method -- unique integer always in the URL.
> That should work even for stubborn proxy caches. I think you could have
> grepped the docs and figured that one out -- I would leave you to do that
> but I think this might be helpful to a few people and I need to start
> my library of FAQs back up.

I searched the online docs for pragma, nocache, cache and mv_no_count and
was uanble to find what I was looking for.  Which docs was this faq in?
Perhaps I don't have it in my search path for when I run into problems.

> If you prefer to keep the unique integer out of the URL, and you
> trust proxy servers to honor the parameter (hah!), you can do:
> Autoload   <<EOA
> [if session browser =~ /MSIE/]
> [tag op=header]Pragma: no-cache[/tag]
> [/if]
> or even
> Autoload   <<EOA
> [if session browser =~ /MSIE/]
>     $Variable->{NO_CACHE} = '<META HTTP-EQUIV="Pragma"
> [/if]
> with __NO_CACHE__ in the header for pages you don't want cached.

Come to find out this method does not work with the new IE 5 browsers.  Here
are the MSDN articles that describe the problem and solution:

Points out to put another <HEAD> and <META> tag at the BOTTOM of the page
for <IE 5. Does not work for IE 5.

Points out to write to the header of the page with nocache options like so
(converted to JScript)

response.setHeader("Cache-Control","no-cache"); file://HTTP 1.1
response.setHeader("Pragma","no-cache"); file://HTTP 1.0
response.setDateHeader ("Expires", 0); file://prevents caching at the proxy

I'm going to use the mv_set_no_count as this *should* work for IE.  If it
doesn't then we'll use the JScript code to write out the header.