On 15 Jan 2007, at 18:05, Graham Leggett wrote:
Giuliano Gavazzi wrote:
I have found that mod_disk_cache is definitely not compatible with
mod_include when the SSI pages contain something like <!--#exec
cmd="./foo.sh" --> (or even an include virtual that points to a cgi).
This isn't so much a cache problem, but rather a problem with the
SSI stuff.
The cache is a standard RFC2616 compliant cache (or at least it
tries to be), but in order to do so effectively, it needs the
cooperation of the content itself.
In order for caches to work, the Last-Modified or ETag headers need
to be set correctly on the content, and this isn't always the case.
When this happens, content isn't cached.
I do not agree, as the content *is* cached, but the cache content is
not correct.
Also, in the revision I mentioned (I think part of 2.3) the problem
again is not that the content is not cached, as it is indeed cached
and with the correct content, but that the size of the cached file is
not stored in the cache and so, when the cache is consulted later, is
discarded. This, I think, happens because in mod_cache' s
cache_save_filter you have the following calls is this order:
1) store_headers
2) store_body
but the size of the body is not know until store_body is called, and
in particular only after:
dobj->file_size += written;
has been called.
(this is just what I think is happening, but I do not pretend of
having understod anything!)
Giuliano