Benutzer-Werkzeuge

Webseiten-Werkzeuge

doku:apache_proxy

Apache: Proxy

Anwendung: mehrere selbstständige Web-Anwendungen auf selber IP und Port

Bsp.: auf einem Server soll sowohl ein „normaler“ Apache Webserver als auch das Kerio-Webfrontend auf Port 80 bzw. 443 laufen. Da das Kerio-Webfrontend als eigenständige Applikation läuft und nicht als Apache-Anwendung, reicht ein normaler namensbasierter virtueller Hosts 1) nicht aus.

Lösungsansatz:

  • namensbasierter virtueller Hosts, z.B:
    • www.example.com löst auf IP auf
    • kerio.example.com löst auf gleiche IP auf
  • Kerio-Webfrontend läuft in Wirklichkeit auf Port 81
  • Apache nimmt alle Anfragen auf Port 80 (und 443) an
  • Die Anfragen an den Namen kerio.example.com werden per Apache-Proxy 2) an Port 81 weitergeleitet

Die magischen Zeilen in der Apache-Konfiguration sind:

        ProxyPass / http://kerio.example.com:81/
        ProxyPassReverse / http://kerio.example.com:81/

Beispiel: SSL-Weiterleitung an internen Service

Redmine ist auf http://vpn.strukturpunkt.de:8080/redmine/ installiert, soll aber von aussen mit SSL als https://strukturpunkt.de/redmine/ aufgerufen werden können.

NameVirtualHost strukturpunkt.de:80
<VirtualHost strukturpunkt.de:80>
...
        RewriteEngine   On
        RewriteRule     ^/redmine$       https://strukturpunkt.de:443/redmine/ [R]
        RewriteRule     ^/redmine/(.*)$  https://strukturpunkt.de:443/redmine/$1 [R]
</VirtualHost>

NameVirtualHost strukturpunkt.de:443
<VirtualHost strukturpunkt.de:443>
        DocumentRoot /var/www/StrukturPunkt.de
...
        RewriteEngine   On
        RewriteRule     ^/redmine$  https://strukturpunkt.de:443/redmine/ [R]
        # braucht: a2dismod proxy_balancer und a2dismod proxy
        ProxyPassMatch ^/redmine/(.*)$   http://vpn.strukturpunkt.de:8080/redmine/$1
        ProxyPreserveHost On
</VirtualHost>
Permalink doku/apache_proxy.txt · Zuletzt geändert: 21.10.2011 20:52 von kfr

oeffentlich