Reverse proxy to Exchange and webserver

Hi I would like to setup a reverse proxy to an exchange server and a webserver. I have installed the wildcard certificate on all three servers.The haproxy server has an IP address of The below settings work when accessing from local network and setting the dns to resolve to the above IP. The issue is externally, The domain name resolves to the external facing IP and then nats to however I can’t get anything to work. The firewall is a basic router. Is this because it is getting redirected as opposed to reverse proxing through the haproxy? Any help appreciated.

frontend servers
bind *:80
bind *:443 ssl crt /etc/ssl/certs/site_cer.pem
acl ismail req.hdr(Host) -i -m str mail.domain
use_backend mailservers if ismail

acl issite req.hdr(Host) -i -m str domain
use_backend webservers if issite


static backend for serving up images, stylesheets and such

backend mailservers
server server2 mail.domain:443 check ssl verify none

backend webservers
server server1 domain:443 check ssl verify none