[Zope-dev] Etag support in page templates
Tres Seaver
tseaver at zope.com
Mon Sep 15 10:26:56 EDT 2003
On Sun, 2003-09-14 at 22:59, Bjorn Stabell wrote:
> Dieter wrote:
> > Please read the HTTP 1.1 spec...
> >
> > Caching requires either an "ETag" or "Last-Modified" header.
> > For good reasons...
>
> That would explain why it never got "fixed", but that's not how I
> understand the RFC: http://www.w3.org/Protocols/rfc2616/rfc2616.html
>
> http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21
> http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.2
> Indicates that "Expires" is enough to make content cacheable, and that
> it should be considered "fresh" until its expire time unless clients or
> servers use cache-control headers to force a revalidation.
>
> Last-Modified and Etag are used to validate the content after it expires
> using If-Modified-Since and If-None-Match respectively.
>
> Is there a thread discussing this already somewhere?
>
> [ Btw, Zope does return an empty Etag header; does that cause any
> confusion? ]
I have a report that it does, at least for one hardware-based cache; I
added a feature to z2.py for a client to turn this off.
The empty E-tag exists to support *very* broken clients (MSOffice over
WebFolders); it should be removed, perhaps with a knob which allows
re-enabling it for the sites that actually have people editing content
using those clients.
A proposal to allow setting the header in a more useful way would be
welcome.
Tres.
--
===============================================================
Tres Seaver tseaver at zope.com
Zope Corporation "Zope Dealers" http://www.zope.com
More information about the Zope-Dev
mailing list