У меня простая конфигурация haproxy: два сервера, один - интерфейс, два - бэкэнд с приложением jboss. Вот конфиг:
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
maxconn 3000
frontend proxy
bind 192.168.2.1:443 ssl crt /etc/ssl/certs/certificate.pem
default_backend jboss
backend jboss
#redirect scheme https if !{ ssl_fc }
server jboss 192.168.1.1:8080 check
Я хочу упростить URL. Теперь, если я хочу войти в веб-приложение, я должен ввести подкаталог в URL-адресе https: // www.example.com/webapp/
Я хочу ввести https: // www.example.com, и haproxy предоставит мне страницу с http://192.168.1.1:8080/webapp. Как это сделать?
Проблема решена добавлением редиректа в раздел фронтенда.
frontend proxy
bind 192.168.2.1:443 ssl crt /etc/ssl/certs/certificate.pem
acl path_root path /
redirect location https://www.example.com/webapp/ if path_root
default_backend jboss