Hi

Using squid 2.6 stable 21 in cascade with another proxy, bordermanager. Browser 
contacts bordermanager , then bordermanager squid, then to the internet.

When using this combination accessing www.google.de, the streetview options 
take between 2 and 2 1/2 minutes to load it. If i replace squid with a 
superlumin iproxy proxy, then it loads in 10 secs.

Lan traces showed a differences between squid and superlumin when a 204 no 
content is sent to bordermanager. Squid sends the 204 no content and a 
connection: keep-alive header. This causes bordermanager to do not forward the 
header to the browser and keep waiting till the tcp timeout ( 2 mins) is 
reached and connection closed. But superlumin sends the 204 no content but, 
instead of the connection header, it sends a content-lenght:0 header. In this 
case bordermanager forwards immediately the header to browser and the load of 
the page goes on.

I've been searching a lot but i could not find anything to determinate if the 
content-length header has to be there. The http 1.1 specs says:


"The 204 response MUST NOT include a message-body, and thus is always 
terminated by the first empty line after the header fields."


if i understood it correctly, the content-length header should be included as 
it is the way to point to a non message body. But i'm not sure 100%


So, if the content-length is needed on the 204 code, then squid is at fault and 
i'll be interested to know how can i force squid to use it.

But if content-length header is not mandatory with the 204, then bordermanager 
is at fault as it should forward the header to browser regardless of the CL 
header.


Any help is greatly appreciate


Thanks


Gonzalo 

Reply via email to