Sur CentOS 7.2.1511 Linux, j'ai installé les packages haproxy-1.5.14-3.el7.x86_64 et httpd-2.4.6-40.el7.centos.1.x86_64.
Le /etc/haproxy/haproxy.cfg
lie HAProxy aux ports 80 et 443 et accepte HTTPS sur slova.de:
defaults
mode http
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
....
frontend public
bind 144.76.184.151:80
bind 144.76.184.151:443 ssl crt /etc/pki/tls/certs/slova.de.pem
reqidel ^X-Forwarded-Proto:
reqidel ^X-Forwarded-For:
reqadd X-Forwarded-Proto:\ https if { ssl_fc }
default_backend Apache
backend Apache
server domain 127.0.0.1:8080
Le /etc/httpd/conf/httpd.conf
lie Apache au port 8080 et sert quelques sites Wordpress:
Listen 127.0.0.1:8080
ServerName 144.76.184.151
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/html/afarber.de
ServerName afarber.de
ErrorLog logs/afarber.de/error_log
CustomLog logs/afarber.de/access_log common
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/html/ruhrgebietsingle.de
ServerName ruhrgebietsingle.de
ErrorLog logs/ruhrgebietsingle.de/error_log
CustomLog logs/ruhrgebietsingle.de/access_log common
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/html/bukvy.de
ServerName bukvy.de
ErrorLog logs/bukvy.de/error_log
CustomLog logs/bukvy.de/access_log common
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/html/slova.de
ServerName slova.de
ErrorLog logs/slova.de/error_log
CustomLog logs/slova.de/access_log common
</VirtualHost>
Quand j'ouvre http://slova.de ou https://slova.de ils fonctionnent bien.
Mais lorsque j'essaie d'ouvrir les URL ci-dessus avec www.
préfixé, le navigateur affiche plutôt http://ruhrgebietsingle.de (le deuxième site sur 4).
Pourquoi ça se passe? Je ne peux tout simplement pas le comprendre.
Quel outil aiderait ici à déboguer?
Dans la console de débogage de Chrome navigateur, je vois 301 Moved Permanently
- mais qui et pourquoi l'envoie?
Ok, je devais ajouter ServerAlias
pour chaque serveur, je n'y avais pas pensé, car j'avais auparavant une règle mod_rewrite pour supprimer le préfixe www.
...
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/html/afarber.de
ServerName afarber.de
ServerAlias *.afarber.de
ErrorLog logs/afarber.de/error_log
CustomLog logs/afarber.de/access_log common
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/html/ruhrgebietsingle.de
ServerName ruhrgebietsingle.de
ServerAlias *.ruhrgebietsingle.de
ErrorLog logs/ruhrgebietsingle.de/error_log
CustomLog logs/ruhrgebietsingle.de/access_log common
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/html/bukvy.de
ServerName bukvy.de
ServerAlias *.bukvy.de
ErrorLog logs/bukvy.de/error_log
CustomLog logs/bukvy.de/access_log common
</VirtualHost>
<VirtualHost 127.0.0.1:8080>
DocumentRoot /var/www/html/slova.de
ServerName slova.de
ServerAlias *.slova.de
ErrorLog logs/slova.de/error_log
CustomLog logs/slova.de/access_log common
</VirtualHost>