jimmy0815
24.07.13, 20:31
Hallo Leute,
ich habe hier folgendes Szenario das mir Kopfzerbrechen bereitet:
Server X auf dem ein apache läuft und dann noch diverse andere Webanwendungen jeweils unter einem eigenen Tomcat/Jetty (unterschiedliche Ports).
Aus dem lokalen Netz sollen die alle einzeln erreichbar sein, ist ja auch der Fall.
Aus dem Internet gibt es eine Portfreigabe auf den Port 80 des apache. Nun will ich auch von außen auf die anderen Services zugreifen und wollte dazu den Proxy vom apache benutzen, in etwa so:
ProxyPass /service1 https://localhost:8180/
ProxyPassReverse /service1 https://localhost:8180/
ProxyPass /service2 https://localhost:8181/
ProxyPassReverse /service2 https://localhost:8181/
Dies funktioniert relativ schlecht. Ich bekomme zwar etwas angezeigt, allerdings ist jetzt das Problem, dass nicht alles geladen werden kann. Dies liegt daran, dass in den Webanwendungen relative Pfade benutzt werden die sich auf das Wurzelverzeichnis beziehen, z.B.
<a href="/foo/bar/foo.jspa"
Das ist ja auch relativ richtig, wenn man den Service direkt aufruft, über den Proxy gibt das aber nur Probleme.
Jetzt habe ich gelesen, dass man zusätzlich mit einer Rewrite Rule arbeiten sollte, die das [P]-Tag beinhaltet. Allerdings blicke ich bei nicht ganz durch, was es mit den Regex usw auf sich hat.
1. Ist das denn überhaupt machbar, so wie ich das will?
2. Falls ja, mag mir jemand erklären wie so eine Rewrite-Regel aussehen müsste?
grüße
jimmy
ich habe hier folgendes Szenario das mir Kopfzerbrechen bereitet:
Server X auf dem ein apache läuft und dann noch diverse andere Webanwendungen jeweils unter einem eigenen Tomcat/Jetty (unterschiedliche Ports).
Aus dem lokalen Netz sollen die alle einzeln erreichbar sein, ist ja auch der Fall.
Aus dem Internet gibt es eine Portfreigabe auf den Port 80 des apache. Nun will ich auch von außen auf die anderen Services zugreifen und wollte dazu den Proxy vom apache benutzen, in etwa so:
ProxyPass /service1 https://localhost:8180/
ProxyPassReverse /service1 https://localhost:8180/
ProxyPass /service2 https://localhost:8181/
ProxyPassReverse /service2 https://localhost:8181/
Dies funktioniert relativ schlecht. Ich bekomme zwar etwas angezeigt, allerdings ist jetzt das Problem, dass nicht alles geladen werden kann. Dies liegt daran, dass in den Webanwendungen relative Pfade benutzt werden die sich auf das Wurzelverzeichnis beziehen, z.B.
<a href="/foo/bar/foo.jspa"
Das ist ja auch relativ richtig, wenn man den Service direkt aufruft, über den Proxy gibt das aber nur Probleme.
Jetzt habe ich gelesen, dass man zusätzlich mit einer Rewrite Rule arbeiten sollte, die das [P]-Tag beinhaltet. Allerdings blicke ich bei nicht ganz durch, was es mit den Regex usw auf sich hat.
1. Ist das denn überhaupt machbar, so wie ich das will?
2. Falls ja, mag mir jemand erklären wie so eine Rewrite-Regel aussehen müsste?
grüße
jimmy