Sie benötigen mindestens mod_proxy und mod_proxy_http, die beide Teil der Distribution sind (aber nicht immer automatisch erstellt). Dann können Sie hier sehen: http://httpd.apache.org/docs/2.2/mod/mod_proxy.html
Simplest config in einem Virtualhost Kontext ist:
ProxyPass /winapp http://127.0.0.1:8080/somedir/
ProxyPassReverse /winapp http://127.0.0.1:8080/somedir/
(Je nach Webapp, die tatsächliche Konfiguration könnte immer ausgefeilter.) , die transparent, jede Anfrage auf dem Weg umleitet winapp/an den Windows-Server und überträgt die resultierende Ausgabe zurück zum Client.
Achtung: Achten Sie auf die Links in den gelieferten Seiten: sie sind nicht neu geschrieben werden, so können Sie sich lotsa Mühe sparen, wenn Sie in der Regel relative Links in Ihrer Anwendung verwenden, wie
<a href=../pics/mypic.jpg">
statt der übliche Integration Alptraum eines jeden Link ist absolut:
<a href="http://myinternalhostname/somedir/crappydesign.jpg">
Letzteres ist BAD NAHEZU jedes Mal!
Zum Umschreiben von Links in Seiten gibt es mod_proxy_html (nicht zu verwechseln mit mod_proxy_http!), Aber das ist eine andere Geschichte und auch eine grausame.
Können Sie erläutern, wie Apache die Anfrage weiterleiten soll? Gibt es auch einen Grund, warum Apache der primäre Server sein sollte oder ist es nur eine Vorliebe? –
Der Grund, Apache zum primären zu machen, ist die Tatsache, dass es mod_rewrite hat. (Ähnliche Lösungen gibt es für IIS, aber nicht so flexibel.) Damit Apache die Anforderung weiterleitet, müssen Sie einen Ordner (der ein virtuelles Host-Stammverzeichnis sein kann) mit Umschreibungsregeln in .htaccess oder httpd definieren. conf – mdb
Für zukünftige Leser ist 'mod_rewrite' keine gute Lösung für dieses Problem, da es nur die URL behandelt, während ein richtiger Proxy alles andere behandelt. – Walf