Re: [squid-users] Invalid Reponse on Squid 3.0 and 3.1 but not 2.6

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Fri, 08 Jun 2012 21:47:16 +1200

On 8/06/2012 8:36 p.m., Alexander.Eck_at_Heidelberg.de wrote:
> Hi everyone,
>
> I'm receiving an error page
> "Invalid response"
> When accessing a specific website.
>
> I'm running squid-3.0.STABLE9-1.el5 on Centos 5.7. The website is the following:
>
> http://register.dpma.de/DPMAregister/marke/experte
>
> just press the button "Recherche starten" and you will see the error page.
>
> Looking at the cache.log file I see no error or something.
>
>
> I have another squid-2.6 on another Centos 5.7 machine. When using this the webpage is displayed correctly.
>
>
> For testing purposes I upgraded my squid 2.6 to squid-3.1.14-1.el5 and tried to access the webpage again.
> Now I'm receiving the same error page as with squid 3.0.
> Fortunately in cache.log I'm receiving the following Warning now:
>
> WARNING: HTTP: Invalid Response: Bad header encountered from http://register.dpma.de/DPMAregister/marke/experte.kopf.form AKA register.dpma.de/DPMAregister/marke/experte.kopf.form

What this means is that an apparently HTTP header is received from the
server which violates the required HTTP syntax. It is detected on
arrival before anything else happens, which is why none of your attempts
at config bypasses are working.

>
> I alrdy tried the following on my squid 3 .0 and 3.1:
>
> 1. Adding the following to squid.conf:
> a. Acl dpma dstdomain register.dpma.de
> b. Request_header_access Accept-Encoding allow dpma

==> Accept-Encoding header is allowed by default, allowing it manually
as well is a no-op.

> 2. Deleting the above and editing:
> a. Acl dpma dstdomain register.dpma.de
> b. Cache deny dpma

==> Denying an object from being stored by Squid does not prevent
theupstream server from generating invalid responses.

>
>
> Can anybody please help me here? I'm not sure why the webpage is displayed on 2.6 correctly, but not on 3.0 and 3.1 ?
> My guess is that the header is corrupt, but shouldn't my first change (Request_header_access etc. ) get this working ?

Squid-2.6 has almost no HTTP/1.1 support. All it takes is for some
HTTP/1.1 feature which 3.x are supposed to parse and process being
invalid syntax, but which 2.6 does not have any support for even parsing
to detect that invalidity.
  I'm not saying that is the issue, just that its trivially possible to
get this type of distinction without any bugs or regression actually
being present.

You need to get a copy of the headers which Squid is receiving from the
upstream server and see what is wrong with them.

Amos
Received on Fri Jun 08 2012 - 09:47:31 MDT

This archive was generated by hypermail 2.2.0 : Fri Jun 08 2012 - 12:00:03 MDT