Willy Tarreau
2009-07-14 16:26:39 UTC
[forwarding to haproxy-***@public.gmane.org, original address was wrong]
Hi Robbie,
Let me guess, do you have nginx behind haproxy ? Another user is experiencing
something similar with errors 400 not correctly being forwarded because the
server immediately resets the connection, which translates into an error. It
would help if you could provide a tcpdump capture of the traffic between
haproxy and the backend server. I suspect we'll see an RST immediately after
the 302.
I'd like to be able to reproduce the issue to see if haproxy gets the data or
not. If it gets the data, we might be able to forward them ignoring the error,
but it is very likely that it does not even get the data. However, since you
say that in TCP mode it works, we have a chance to get it to work.
Also, if you can reproduce that on unitary tests, could you please run
"strace -o /tmp/haproxy.trace -p $(pidof haproxy)" and send me the file
/tmp/haproxy.trace ?
It will help me a lot !
Regards,
Willy
Hi Robbie,
Hi,
i have a problem with the 502 errors. I saw they got better debugging
through the use of the `echo "show errors" | socat stdio socket command`
since 2 versions.
But i never see an error in there, the sess and info work though.
haproxy -v
HA-Proxy version 1.3.18 2009/05/10
GET /go/login/action=logout HTTP/1.1
...
HTTP/1.x 502 Bad Gateway
Cache-Control: no-cache
Connection: close
Content-Type: text/html
Jul 14 13:09:10 localhost haproxy[4634]: clientip:54173
[14/Jul/2009:13:09:10.142] domain domain/webxxx 5/0/1/-1/76 502 8396 - -
PH-- 161/161/144/4/0 0/0 "GET /go/login/action=logout HTTP/1.1"
The -1 above indicates that an error was received before the end of headers.i have a problem with the 502 errors. I saw they got better debugging
through the use of the `echo "show errors" | socat stdio socket command`
since 2 versions.
But i never see an error in there, the sess and info work though.
haproxy -v
HA-Proxy version 1.3.18 2009/05/10
GET /go/login/action=logout HTTP/1.1
...
HTTP/1.x 502 Bad Gateway
Cache-Control: no-cache
Connection: close
Content-Type: text/html
Jul 14 13:09:10 localhost haproxy[4634]: clientip:54173
[14/Jul/2009:13:09:10.142] domain domain/webxxx 5/0/1/-1/76 502 8396 - -
PH-- 161/161/144/4/0 0/0 "GET /go/login/action=logout HTTP/1.1"
Let me guess, do you have nginx behind haproxy ? Another user is experiencing
something similar with errors 400 not correctly being forwarded because the
server immediately resets the connection, which translates into an error. It
would help if you could provide a tcpdump capture of the traffic between
haproxy and the backend server. I suspect we'll see an RST immediately after
the 302.
I'd like to be able to reproduce the issue to see if haproxy gets the data or
not. If it gets the data, we might be able to forward them ignoring the error,
but it is very likely that it does not even get the data. However, since you
say that in TCP mode it works, we have a chance to get it to work.
Also, if you can reproduce that on unitary tests, could you please run
"strace -o /tmp/haproxy.trace -p $(pidof haproxy)" and send me the file
/tmp/haproxy.trace ?
It will help me a lot !
Regards,
Willy