IIRC, the weak ETag generation is in the core code, not mod_dav, so
it's also there in the case where edits happen outside of DAV
(possible outside of httpd altogether).
I agree that the MD5 solution is a good one; it's what the Twisted
server now does, and that works swell. But, as would be the case for
Apache, it works for DAV, but not the generic server, since it doesn't
have a property store.
In any case, I agree that this is an implementation, not protocol,
issue.
-wsv
On Nov 30, 2006, at 2:50 PM, Roy T. Fielding wrote:
> In regard to Apache mod_dav's use of weak entity tags, that is a
> separate
> issue and can be fixed without changing HTTP at all. It is merely an
> implementation quirk having to do with the way mod_dav reuses the
> file space as a storage mechanism (and thus a separate handler for
> GET).
> I can very easily turn it off, as can anyone with access to the config
> files. The right solution, though, is to use a property-based back-
> end
> and store the MD5 on write, which would allow the weak designation
> to be
> removed and actually solve the real problem of clients wanting a
> strong
> etag returned from PUT. Patches are welcome.