httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bill Stoddard" <>
Subject Re: cvs commit: httpd-2.0/modules/experimental cache_storage.c cache_util.c mod_mem_cache.c mod_cache.c mod_cache.h
Date Wed, 05 Jun 2002 12:51:39 GMT

> wrote:
> >   Add content negotiation and expiration policy to mod_cache and mod_mem_cache.
> >   mod_disk_cache still needs work.
> In the original cache design, the cache was able to cache more than one
> variant of a specific URL. If an english page came along, it would cache
> the english page. If a french page came along, it would cache the french
> page alongside the english page. If a browser was returned cache data,
> content negotiation would be used to select the best cached variant.
> As a result of the above I am confused why "content negotiation has been
> added to mod_cache" - isn't content negotiation built in already?
> Regards,
> Graham

The cache still does not support caching multiviews of an object. A lot of the
infrastructure is there but the code has not been written.  My commit fixed an RFC2616
violation; we were placing negotiated documents (responses containing a Vary: header) in
the cache but we were not saving the original request headers and we were not making the
checks to to keep us from serving up negotiated content incorrectly. It can certainly be
substantially improved :-)

In your design, where did the code that did the content negotiation live?   Were you
envisioning maintaining a cached *.var file then issuing a subrequest against that .var
file to drive content negotiation? There are a lots of possibilities...


View raw message