Re: Strange Squid problem

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Mon, 7 Mar 2005 16:59:07 +0100 (CET)

On Mon, 7 Mar 2005, Henrik Nordstrom wrote:

> Ugh.. this is a seriously broken server.
>
> Transfer-Encoding: chunked
>
> in response to a HTTP/1.0 request (squid is HTTP/1.0) is a big NO NO NO.
>
> header_access Accept-Encoding deny all
>
> maybe this works around the server bug.
>
> (note: Accept-Encoding doesn't really have anything to do with
> Transfer-Encoding, but...)

Verified and seems to indeed be the case.

This server behaving oddly in many ways. My first attempts in sending test
requests to this server always gawe "HTTP/1.1 400 Invalid Request" errors,
but after some fiddling it now accepts my probes (very picky server).

With "Accept-Encoding: chunked" it responds with a chunked transfer
encoding of a gzip:ed content encoded entity.

The server most certainly is not an IIS/6.0 even if advertised as such.
Looks like there is some anonymous misbehaving frontend server infront of
the IIS/6.0 server applying the gzip compression or maybe misadvertisign
the request as an HTTP/1.1 request to IIS.

There is some things we can do to work around this buggy server. For a
start we should reject "Transfer-Encoding: chunked" replies as these can
not be forwarded proper, but we could obviously try to be smarter than
this

   a) Decunk chunked replies on the fly when received by HTTP. Not as hard
as it sounds, except possibly some bad design interactions with how the
http header is forwarded...

   b) Reject chunked replies, but first retry the request while filtering
out any headers wich are suspected to trigger the chunked transfer
encoding

      - Accept-Encoding
      - TE
      (any other?)

   c) Ignore the whole mess.

Regards
Henrik
Received on Mon Mar 07 2005 - 08:59:16 MST

This archive was generated by hypermail pre-2.1.9 : Fri Apr 01 2005 - 12:00:04 MST