Si vous souhaitez réécrire l'url, vous devez modifier l'hôte virtuel de votre site en ajoutant ces lignes:
### Enabling mod_rewrite
Options FollowSymLinks
RewriteEngine on
### Rewrite http:// => https://
RewriteCond %{SERVER_PORT} 80$
RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [R=301,NC,L]
Mais, si vous souhaitez rediriger toutes vos requêtes sur le port 80 vers le port 443 des serveurs web derrière le proxy, vous pouvez essayer cet exemple de conf sur votre haproxy.cfg:
##########
# Global #
##########
global
maxconn 100
spread-checks 50
daemon
nbproc 4
############
# Defaults #
############
defaults
maxconn 100
log global
mode http
option dontlognull
retries 3
contimeout 60000
clitimeout 60000
srvtimeout 60000
#####################
# Frontend: HTTP-IN #
#####################
frontend http-in
bind *:80
option logasap
option httplog
option httpclose
log global
default_backend sslwebserver
#########################
# Backend: SSLWEBSERVER #
#########################
backend sslwebserver
option httplog
option forwardfor
option abortonclose
log global
balance roundrobin
# Server List
server sslws01 webserver01:443 check
server sslws02 webserver02:443 check
server sslws03 webserver03:443 check
J'espère que cela vous aidera
redirect scheme https code 301 if { hdr(Host) -i www.mydomain.com } !{ ssl_fc }
http-request redirect scheme https code 301 if !{ ssl_fc }
. La documentation pour la redirection http dans ALOHA HAProxy 7.0 mentionne même que " la syntaxe des deux directives est la même, cela dit, la redirection est maintenant considérée comme héritée et les configurations doivent passer au formulaire de redirection de requête http ". J'en déduis, sans être totalement sûr, que la même explication s'applique aux nouvelles versions de la version open source de HAProxy.