Squid closes the connection when presented with “401 Unauthorized”

httphttp-basic-authenticationsquid

This is the conversation:

==> GET http://xy/z HTTP/1.1
<== HTTP/1.0 401 Unauthorized / Proxy-Connection: close

When bypassing Squid (squid/3.0.STABLE6), I get the HTTP basic authentication prompt, as it should.

Is there a specific setting that controls this behaviour, or is this actually a bug?

Best Answer

I think I found the solution. Squid isn't really HTTP 1.1 compliant and thus intereferes with advanced stuff like persistent connections.

You can see here http://wiki.squid-cache.org/Http11Checklist under 8.1.2 that there is an open issue described as "assume http/1.1 servers will maintain persistent connections even after error responses from the server".

So: server sends 401 => squid closes the connection => BASIC auth doesn't work

Sad but true.