httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Eli Marmor <mar...@netmask.it>
Subject Re: [PATCH] mod_cache, expand impact of CacheIgnoreCacheControl
Date Wed, 09 Mar 2005 17:42:32 GMT
Justin Erenkrantz wrote:
> 
> --On Wednesday, March 9, 2005 9:47 AM +0200 Eli Marmor <marmor@netmask.it>
> wrote:
> 
> > Time to define the exact directive and names?
> 
> I'd start with all of the directive that mod_cache currently exposes that
> are binary (on/off).
> 
> At a quick glance, that looks like CacheIgnoreCacheControl,
> CacheIgnoreNoLastMod, CacheStoreNoStore, CacheStorePrivate.  For a first
> cut, it probably just makes sense to drop Cache from the prefix and see how
> it goes.  -- justin

That's all?!

Let me quote myself (and this is not the complete list):

> If I recall correctly, there were MANY conditions in mod_cache that
> prevented caching (like checking for a POST method, no-store, no-cache,
> auth, GET args, private, public, must-revalidate, maxage, etc.).

The complete list may be long, but if we want to allow offline caching,
we must precede a condition before any rule of mod_cache.c that
prevents caching in any case, and I don't see any serious difference
(performance, code size, memory size) between "if (conf->something!=0)"
and "if (conf->something & SOMETHING != 0)". So we don't need to have
one directive/bit for many conditions, as long as it is done in a
friendly way for the users (i.e. there are 3-4 pre-defined constants
which mean "cache nothing", "default cache", and "cache everything -
for offline browsing").

In addition, the "entity" must be updated to contain more attributes of
the request (args, POST args, cookies, etc.). And to find it fast, the
key generated by cache_generate_key must be based on more things (such
as args). Because sometimes a dynamic site may have thousands pages,
all of them with the same URL but with different args.

By the way: the whole concept is not according to RFC 2616, but you
can't do offline caching without contradicting the RFC, and we already
have a lot of other directives that allow the users to be incompatible
with the RFC, *IF THIS IS WHAT THEY WANT AND THEY KNOW WHAT THEY ARE
DOING*.

-- 
Eli Marmor
marmor@netmask.it
Netmask (El-Mar) Internet Technologies Ltd.
__________________________________________________________
Tel.:   +972-9-766-1020          8 Yad-Harutzim St.
Fax.:   +972-9-766-1314          P.O.B. 7004
Mobile: +972-50-5237338          Kfar-Saba 44641, Israel

Mime
View raw message