Hi Dmitry,

Le lundi 26 avril 2010 13:57:12, Dmitry Sivachenko a écrit :
> When I put that server behind haproxy (version 1.4.4) I see the following:
> 
> 
> 1) GET <some URL> HTTP/1.1
> Host: host.pp.ru
> User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.3) 
> Gecko/2010041
> 4 Firefox/3.6.3
> Accept: text/javascript, application/javascript, */*
> Accept-Language: en-us,ru;q=0.7,en;q=0.3
> Accept-Encoding: gzip,deflate
> Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
> Keep-Alive: 115
> Connection: keep-alive
> 
> 2) 
> HTTP/1.1 200 OK
> Date: Mon, 26 Apr 2010 11:45:01 GMT
> Expires: Mon, 26 Apr 2010 11:46:01 GMT
> Content-Type: text/javascript; charset=utf-8
> Connection: Close
> 
> <some data>
> 
> I have
> mode http
> option http-server-close
> option http-pretend-keepalive
> 
> in my config (tried both with and without http-pretend-keepalive).
> 
> Can you please explain in more detail what server makes wrong and why haproxy
> adds Connection: Close header
> (and why Firefox successfully uses HTTP keep-alive with the same server 
> without
> haproxy).

HAProxy can't accept the connection to be keep-alived as it doesn't provide a 
Content-Length (nor the communication allows chunked transfer).
Try to add a Content-Length header equal to your data length and Keep-Alive 
should be accepted.

-- 
Cyril Bonté

Reply via email to