Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Serveurs (Apache, IIS,...) > Apache
Apache Forum d'entraide Apache. Avant de poster : Cours Apache, FAQ Apache
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/07/2011, 20h17   #1
Invité de passage
 
Homme
Inscription : juillet 2011
Messages : 1
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : juillet 2011
Messages : 1
Points : 0
Points : 0
Par défaut Apache, Tomcat, SSL et mod_proxy

Bonjour,
Je souhaite configurer un serveur Apache en DMZ. Ce serveur ne recevra que des connexions https sécurisées et pointera (mod_proxy_http) vers un 2e serveur Apache sur le LAN. Ce 2e serveur sert de load-balancer (mod_proxy_balancer) vers 2 serveurs Tomcat.

Tout fonctionne bien en http mais dès que je passe en https sur l'un des serveurs Apache je ne peux naviguer car la réponse me parvient en http.

J'ai trouvé un contournement en positionnant "ProxyPreserveHost" à "Off" mais ça ne me paraît pas une solution viable...

Voici ma configuration Apache au niveau du load-balancer :

Code :
1
2
3
4
5
6
7
8
9
<Proxy balancer://sias>
   BalancerMember      http://10.10.176.86:8070 route=test1 disablereuse=On timeout=3600
   BalancerMember      http://10.10.176.87:8070 route=test2 disablereuse=On timeout=3600
</Proxy>

ProxyPreserveHost On

ProxyPass /testpreprod balancer://test/testpreprod stickysession=JSESSIONID nofailover=On
ProxyPassReverse /testpreprod balancer://test/testpreprod
Et au niveau du serveur Apache de DMZ :

Code :
1
2
3
4
5
6
SSLProxyEngine On
ProxyRequests Off
ProxyPreserveHost Off

ProxyPass /testpreprod/ http://10.10.176.85/testpreprod/
ProxyPassReverse /testpreprod/ http://10.10.176.85/testpreprod/
Au niveau de la configuration de Tomcat, je n'ai indiqué que les jvmroutes et pas de proxyname, etc.

J'ai déjà effectué ce type de configuration en mod_jk autrefois sans aucun paramétrage particulier : la connexion entrante (en http ou https) définissait le protocole qui était alors utilisé tout au long de la navigation.

Qu'est-ce qui cloche ? Est-ce qu'il existe un paramètre permettant à Apache de garantir l'usage du même protocole entre le client et lui, quel que soit celui qui est utilisé vers les serveurs suivants ? Merci !
slaphero est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2011, 23h57   #2
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 289
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 289
Points : 8 575
Points : 8 575
Citation:
Envoyé par slaphero Voir le message
J'ai trouvé un contournement en positionnant "ProxyPreserveHost" à "Off" mais ça ne me paraît pas une solution viable...
Non, ça ne me paraît pas choquant. C'est à ça que sert ce paramètre : pouvoir gérer les cas bizarroïdes de redirection à travers les reverse proxies. Ce paramétrage à off est même nécessaire quand on est dans ton cas cas malheureusement, l'en-tête Host n'indique pas le protocole : HTTP ou HTTPS. Et donc, quand on se retrouve à utiliser les ports standard, cet en-tête Host vaut la même chose quand on est en HTTP ou HTTPS. Les seuls moyens de s'en sortir c'est de faire comme toi pour quand seul le dernier maillon Apache fasse la redirection comme il faut, soit "hardcoder" les URL dans le code quelque part. A tout prendre, ta configuration est ce qu'il y a de plus simple.
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h04.


 
 
 
 
Partenaires

Hébergement Web