Re: pragma no-cache -- Can we make it more useful?

Chris Lilley, Computer Graphics Unit (
Wed, 13 Jul 1994 18:22:11 GMT

> I've been reading the http protocol specification and
> came across the request function pragma no-cache.

> I'm glad to see that there is a way for a client to express
> its need for the latest-and-greatest version of the referenced
> document

Ah. I think perhaps you misunderstand.

When using a cacheing proxy server, you *do* always get the latest and greatest
version - unless the original server is unreachable, in which case you get what
was in the cache.

When the proxy gets a request, it sends a HEAD request to the original server to
check that the cached file has not expired and has not changed. If all is OK,
the cached copy is sent to the client.

As I understand it, pragma no-cache is more a security consideration to prevent
documents which need authentication piling up in intermediate proxy caches. If
I'm wrong her, perhaps Phil HB will put me straight).

> For example, the client might want to say, in effect, "give me the
> document referenced by this URL. I am willing to accept a copy that
> might be 2 hours old."

My comments above notwithstanding, this may be useful (but not in the context of
pragma nocache). BUT, how would you specify this at the user interface level? It
will change from document to document, so would have to be set by the user. For
example, a copy of Shakespears sonnets that is 1 year old is likely to be fine,
wheras a video grab of a coffe pot that is 5 minutes old might be worthless ;-)

Being prompted for the acceptable age with *each* GET would be tiresome. It
would also only matter if you were using a proxy, not if you were talking to the
originbal server. As the whole point is to make proxy cacheing transparent to
the user - nop URLs to edit, it all works as before but faster - on balance I do
not see the merit of your proposal. It would save network time at the expense of
user time, which is the wrong way round in my book.

> (When I say "might be X hours old", I'm referring not to the age of
> the document since it last changed, but the time since it may have
> been copied from the authoritative server.)

I see why you say this, but there is no need, as described above. The age of the
document since it last changed is readily available information.

Chris Lilley
|Technical Author, ITTI Computer Graphics & Visualisation Training Project |
| Computer Graphics Unit,        |  Internet:         |
| Manchester Computing Centre,   |     Janet:         |
| Oxford Road,                   |     Voice: +44 61 275 6045              |
| Manchester, UK.  M13 9PL       |       Fax: +44 61 275 6040              |
| X400: /I=c/S=lilley/O=manchester-computing-centre/PRMD=UK.AC/ADMD= /C=GB/|
| <A HREF="">my page</A> |