Conditional HEAD not supported

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Tue, 16 Jan 2001 14:09:24 +0100

It seems we do not hande conditional HEAD requests.

From client_side.c:clientCacheHit:

    } else if (r->method == METHOD_HEAD) {
        /*
         * RFC 2068 seems to indicate there is no "conditional HEAD"
         * request. We cannot validate a cached object for a HEAD
         * request, nor can we return 304.
         */
...

It is true that the specifications for status 304 does not mention HEAD
(only GET). However, the specification for HEAD (9.4) does say that
HEAD is identical to GET, and behaves in the same way except that no
message body is returned. So it is reasonable to expect that the two can
be exchanged in any part of the specification except where related to
reply-message-body.

On the bright side we are not alone in this. The implementation of
HEAD varies quite a lot between different servers. However, at least two
major players (IIS and Apache) have read the specification in such a way
that conditional HEAD is supported. (IIS is also one of the most common
where HEAD is not compliant at all.. HEAD on a page processed by SSI is
processed like GET, including reply-message-body)

/Henrik
Received on Tue Jan 16 2001 - 06:08:16 MST

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:13:18 MST