J'ai Apache Tomcat en cours d'exécution avec SSL activé. J'ai Apache HTTP Server agissant comme un proxy inverse, donc si mes utilisateurs frappent http: // myserver / tomcat / ils sont passés à http: // myserver: 8080 .
ProxyPass /tomcat/ http://myserver:8080/
ProxyPassReverse /tomcat/ http://myserver:8080/
J'ai également un serveur HTTP Apache configuré pour SSL, donc lorsque les utilisateurs frappent https: // myserver / tomcat / ils doivent être transmis à https: // myserver: 8443 / .
Avec la configuration actuelle de ProxyPass et ProxyPassReverse, ils vont être redirigés vers l'URL non SSL. Comment puis-je configurer le proxy pass pour qu'il redirige vers différents protocoles et ports en fonction de la demande entrante?
Autrement dit, si quelqu'un entre via HTTPS, comment puis-je le rediriger vers mon tomcat @ https: // myserver: 8443 ?
Mise à jour:
@ mike-insch
J'ai essayé:
NameVirtualHost *:443
<VirtualHost *:80>
ProxyPass /tomcat/ http://myserver:8080/
ProxyPassReverse /tomcat/ http://myserver:8080/
</VirtualHost>
<VirtualHost *:443>
ProxyPass /tomcat/ https://myserver:8443/
ProxyPassReverse /tomcat/ https://myserver:8443/
</VirtualHost>
Maintenant, quand je visite: https: // myserver / tomcat / j'obtiens "page non trouvée". Dans le journal des erreurs, je vois "Le fichier n'existe pas: / var / apache2 / htdocs / tomcat"
Ce qui est correct, mais je m'attendais à ce que la demande soit acheminée vers tomcat s'exécutant sur https: // myserver: 8443 / .
Je suppose que je dois regarder davantage les hôtes virtuels, à moins que quelque chose ne paraisse manifestement faux.
NameVirtualHost
directive ici. De plus, vous devrez ajouter les directives appropriées pour activer SSL dans votre<VirtualHost *:443>
section.