j'essaie de configurer mon serveur Apache en tant que proxy pour desservir deux services internes, l'un écoutant sur 8080 et devant recevoir le trafic sur une URL spécifique et l'autre sur 8077 et devant recevoir tous les autres trafics http.
J'ai déployé et configuré Apache sur le même serveur sur lequel ces deux services sont en cours d'exécution. Il écoute 443 ainsi que toute la configuration SSL et fonctionne correctement.
j'ai également activé les modules proxy_proxy, proxy_http_module et proxy_http2_module
Ce que je veux réaliser
si l'URL demandée est/webhook1 -> transmettez-la à EP1 http: // localhost: 8080 et . Toute autre URL demandée doit être transmise à EP2 http: // localhost: 8077
Ma configuration actuelle vers le premier service
ProxyPass /webhook1 http://localhost:8080
ProxyPassReverse /webhook1 http://localhost:8080
Maintenant, je veux définir un autre laissez-passer de proxy pour être quelque chose comme
ProxyPass / http://localhost:8077
ProxyPassReverse / http://localhost:8077
assembler les deux configurations ne fonctionne pas, appréciez votre aide pour configurer Apache afin qu'il réponde à mes besoins
Merci d'avance
Placez les règles ProxyPass dans le bon ordre, au besoin
si vous voulez évaluer/webhook1 et l'envoyer à 8080, sinon envoyer le trafic à 8077, les règles doivent être dans l'ordre suivant
ProxyPass /webhook1 http://localhost:8080
ProxyPassReverse /webhook1 http://localhost:8080
ProxyPass / http://localhost:8077
ProxyPassReverse / http://localhost:8077
Vous pouvez écrire le fichier ssl.conf sous/etc/Apache2/sites-enabled/comme suit: -
RewriteEngine on
ProxyPass /webhook1 http://127.0.0.1:8080/
ProxyPassReverse /webhook1 http://127.0.0.1:8080/
RewriteRule ^/$ /webhook1/ [R,L]
RewriteEngine on
ProxyPass / http://127.0.0.1:8087/
ProxyPassReverse / http://127.0.0.1:8087/
RewriteRule ^/$ /EP2/ [R,L]
Il redirigera automatiquement vers HTTPS si un certificat SSL est configuré dans Apache2.