- From: Adrien de Croy <adrien@qbik.com>
- Date: Fri, 05 Jun 2009 19:12:59 +1200
- To: HTTP Working Group <ietf-http-wg@w3.org>
There's a requirement in RFC2616 to use headers included in 304 responses to either invalidate or update cached entries. Specifically it looks like if the 304 response returns a different value to what is stored, for any of Content-Length Content-MD5 Last-Modified ETag Then the cache must invalidate the stored entry. This is fine, until you hit IIS which seems to be returning a Content-Length: 0 in all 304 responses. I guess that since the 304 message has no entity body, the Content-Length of 0 is understandable, if not maybe misguided? Or is it correct? Is it legal in a 304 response to include a Content-Length value other than 0? It's not like a HEAD command, this is a 304 response to a conditional GET. Additionally 304 responses are prohibited from having an entity body. The rules for message length imply that with a 304 response, the Content-Length header does not specify the message length. So it's just payload. So should I assume that this is just a bug on the part of this IIS server? What do others do? It causes problems obviously to invalidate the cache entry because of this. Thanks Adrien -- Adrien de Croy - WinGate Proxy Server - http://www.wingate.com
Received on Friday, 5 June 2009 07:10:25 UTC