Wenn man mehrere virtuelle Maschinen für verschiedene Webdienste mit einer IP betreiben will, kommt man nicht umhin einen Proxy zu verwenden.
Dafür eignet z.B.
mod_proxy mit
mod_proxy_http.
ProxyPass /myApp http://internerServer:8080/myApp
ProxyPassReverse /myApp http://internerServer:8080/myApp
Dies leitet alle Anfragen an /myApp an den entfernten Host weiter, der nur im internen Netz erreichbar ist, und kümmert sich drum, dass alle Hostnamen in den HTTP-Headern entsprechend geändert werden.
Die ausgegebene Webseite wird jedoch nicht verändert, so dass absolute Links möglicherweise auf die falsche Adresse linken.
Wenn die hinter dem Proxy laufende Software damit nicht umgehen kann, empfielt sich
mod_proxy_html, welches versucht alle absoluten Pfade im HTML zu ersetzen.
Wenn die Software die Links jedoch entsprechend der URL generiert, mit der sie aufgerufen wurde, kann man mit der Direktive
ProxyPreserveHost On
den Apache dazu bringen, die Anfrage ohne Änderung des
Host:-Headers weiterzuleiten. Lohnt sich vorallem bei der Generierung von RSS-Feeds.
Quellen:
[1]
http://httpd.apache.org/docs/2.0/mod/mod_proxy.html#proxypreservehost
[2]
http://www.atlassian.com/software/jira/docs/latest/apacheintegration.html