I know this is not an HAproxy forum however this is just incase somone else has the same issue.
To solve this problem you need to use "mode tcp" using HAProxy.
IIS is expecting the exact TCP traffic and while HAProxy resends valid HTTP requests it changes the TCP stream.
"mode tcp" still works with SSL however you will lose the "option forwardfor" option
frontend port80redirect
bind *:80
mode http
redirect location https://url.of.server
frontend port443listen
bind *:443 ssl crt /etc/haproxy/certs/cert.pem
mode tcp
default_backend https-backend
backend https-backend
mode tcp
server crm <ServerIP>:443 check ssl verify none
To solve this problem you need to use "mode tcp" using HAProxy.
IIS is expecting the exact TCP traffic and while HAProxy resends valid HTTP requests it changes the TCP stream.
"mode tcp" still works with SSL however you will lose the "option forwardfor" option
frontend port80redirect
bind *:80
mode http
redirect location https://url.of.server
frontend port443listen
bind *:443 ssl crt /etc/haproxy/certs/cert.pem
mode tcp
default_backend https-backend
backend https-backend
mode tcp
server crm <ServerIP>:443 check ssl verify none