Re: p2: Content-Length in HEAD responses

Willy Tarreau <w@1wt.eu> Sat, 20 April 2013 09:07 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id B093221F90CD for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sat, 20 Apr 2013 02:07:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.029
X-Spam-Level:
X-Spam-Status: No, score=-10.029 tagged_above=-999 required=5 tests=[AWL=0.570, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id brGM1iuiIfUr for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sat, 20 Apr 2013 02:07:43 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id 6320321F9079 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Sat, 20 Apr 2013 02:07:36 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1UTTlK-0006CK-K1 for ietf-http-wg-dist@listhub.w3.org; Sat, 20 Apr 2013 09:07:14 +0000
Resent-Date: Sat, 20 Apr 2013 09:07:14 +0000
Resent-Message-Id: <E1UTTlK-0006CK-K1@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <w@1wt.eu>) id 1UTTlH-0006Bf-Ly for ietf-http-wg@listhub.w3.org; Sat, 20 Apr 2013 09:07:11 +0000
Received: from 1wt.eu ([62.212.114.60]) by lisa.w3.org with esmtp (Exim 4.72) (envelope-from <w@1wt.eu>) id 1UTTlG-00028w-UD for ietf-http-wg@w3.org; Sat, 20 Apr 2013 09:07:11 +0000
Received: (from willy@localhost) by mail.home.local (8.14.4/8.14.4/Submit) id r3K96lXP029029; Sat, 20 Apr 2013 11:06:47 +0200
Date: Sat, 20 Apr 2013 11:06:47 +0200
From: Willy Tarreau <w@1wt.eu>
To: Mark Nottingham <mnot@mnot.net>
Cc: "ietf-http-wg@w3.org Group" <ietf-http-wg@w3.org>
Message-ID: <20130420090647.GQ26517@1wt.eu>
References: <6EAF151D-EBE7-456D-B5D1-A35933CCDCF8@mnot.net>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <6EAF151D-EBE7-456D-B5D1-A35933CCDCF8@mnot.net>
User-Agent: Mutt/1.4.2.3i
Received-SPF: pass client-ip=62.212.114.60; envelope-from=w@1wt.eu; helo=1wt.eu
X-W3C-Hub-Spam-Status: No, score=-3.3
X-W3C-Hub-Spam-Report: AWL=-2.642, RP_MATCHES_RCVD=-0.702, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001
X-W3C-Scan-Sig: lisa.w3.org 1UTTlG-00028w-UD 6adff7d82f81365159a26fa583b9fd7a
X-Original-To: ietf-http-wg@w3.org
Subject: Re: p2: Content-Length in HEAD responses
Archived-At: <http://www.w3.org/mid/20130420090647.GQ26517@1wt.eu>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/17415
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

On Sat, Apr 20, 2013 at 06:41:01PM +1000, Mark Nottingham wrote:
> p2 4.3.2 says:
> 
>     Aside from the payload header fields (Section 3.3), the server SHOULD
>     send the same header fields in response to a HEAD request as it would
>     have sent if the request had been a GET.
> 
> The payload header fields include Content-Length, which in my testing is
> pretty common in HEAD responses. Was this an oversight, or intentional?

In my opinion it was intentional, as it's the only way for a client
to know the payload size in advance without retrieving the file.

Also I remember about at least one cache which used to truncate cached
contents when a server returned "content-length: 0" in response to a
HEAD request. So most likely, especially due to caches, we don't want
the server to return a different content-length on HEAD as much as
possible.

> (We already have an exception for HEAD responses in p1's message body length
> algorithm, section 3.3.3).

Exactly, so the SHOULD above should not cause any issue.

Willy