Simple package à installer sur le serveur.
sudo apt install haproxy
La configuration de HAProxy se fait via le fichier de configuration haproxy.cfg situé à /etc/haproxy/haproxy.cfg
vim /etc/haproxy/haproxy.cfg
On rajoute un front end en mode http
frontend http-in bind *:80 mode http acl myapp_front1 hdr_dom(host) -i sous-domaine1.mon-domaine.fr use_backend load1 if myapp_front1 acl myapp_front2 hdr_dom(host) -i sous-domaine2.mon-domaine.fr use_backend load2 if myapp_front2
(ici tout les entrées sur le port 80) On utilise se qu'on appel une ACL pour faire une sorte de règle de redirection.
Désignation des serveurs qui seront utilisés par les règles ACL
backend load1 server serveur_apache 172.16.0.101:80 backend load2 server serveur_nginx 172.16.0.102:80
Tester la configuration avant de relancer haproxy pour eviter les erreurs.
haproxy -c -f /etc/haproxy/haproxy.cfg
Si tout est bon, relancer le service.
sudo systemctl restart haproxy