Hi, Some further info.
The two configs are below, old and new, the differences are minor: listen Load-Balancer-oldapp bind *:5041 mode http balance roundrobin stats enable stats hide-version stats refresh 20s stats show-node stats admin if TRUE stick-table type ip size 1m expire 1h stick on src option httpclose option forwardfor option httpchk GET /forms/frmservlet?config=oldapp http-check expect status 200 http-check disable-on-404 server hostingapp2_5041 172.17.2.40:5041 check server hostingapp3_5041 172.17.2.50:5041 check option redispatch listen Load-Balancer-newapp bind *:5051 mode http balance roundrobin stats enable stats hide-version stats refresh 20s stats show-node stats admin if TRUE stick-table type ip size 1m expire 1h stick on src option httpclose option forwardfor option httpchk GET /forms/frmservlet?config=newapp http-check expect status 200 http-check disable-on-404 server sh1hostingapp4_5051 172.17.2.60:5051 server sh1hostingapp5_5051 172.17.2.70:5051 option redispatch When I take the IP, port and path from those configs and combine them for testing I end up with four URLS http://172.17.2.40:5041/forms/frmservlet?config=oldapp http://172.17.2.50:5041/forms/frmservlet?config=oldapp http://172.17.2.60:5051/forms/frmservlet?config=newapp http://172.17.2.70:5051/forms/frmservlet?config=newapp If I access all four of those URLs with lynx to show the headers from the command line on the haproxy server I get the same result from each server, instantaneous response and HTTP 200 status. [root@HAProxy1 ~]# lynx -head -dump http://172.17.2.40:5041/forms/frmservlet?config=oldapp HTTP/1.1 200 OK Date: Sun, 07 Aug 2016 19:01:32 GMT Server: Oracle-Application-Server-11g Cache-Control: no-cache,no-store Content-Length: 5496 X-ORACLE-DMS-ECID: 00ia1Oq3joKFw00Fzzw0w00001Co001zZk X-Powered-By: Servlet/2.5 JSP/2.1 Connection: close Content-Type: text/html Content-Language: en [root@HAProxy1 ~]# lynx -head -dump http://172.17.2.70:5051/forms/frmservlet?config=newapp HTTP/1.1 200 OK Date: Sun, 07 Aug 2016 18:59:29 GMT Server: Oracle-Application-Server-11g Cache-Control: no-cache,no-store Content-Length: 5505 X-ORACLE-DMS-ECID: 00ia1OihrRjDsXH6yvnZ6G0001mS004H^5 X-Powered-By: Servlet/2.5 JSP/2.1 Connection: close Content-Type: text/html Content-Language: en But the haproxy stats page reports L7 timeout if we add in a check on the new app setup. Any ideas what I need to check next? Kind Regards, John Lanigan CORE | * +353 (0)25 41400 | * john.lani...@coresoftware.ie<mailto:john.lani...@coresoftware.ie> | ? www.coresoftware.ie<http://www.coreibs.ie/> From: John Lanigan [mailto:john.lani...@coresoftware.ie] Sent: Thursday 4 August 2016 22:55 To: haproxy@formilux.org Subject: Problem with health checking Hi, I've been running haproxy 1.4.24 on centos 6.5 for over 2 years, load balancing a pair of Oracle 11g app servers on Windows 2008r2. It's worked perfectly the entire time. We have recently built two new app servers, same version of Oracle 11g on Windows 2012R2. For health checking we check for http status 200 on the homepage of the application. For the new servers the health checking is failing. We are getting a layer 7 timeout. However when I try and access the page using either curl or lynx it downloads instantly with status 200. Any tips as to where I go from here in troubleshooting would be great. I've checked and double checked the config and the only difference for this load balancer over the existing ones is the IP and port numbers. Right now we are load balancing without health checking, but obviously that's not a solution. Any suggestions would be great, thanks in advance John