doku:apache_proxy
Inhaltsverzeichnis
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.comwerden 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>
Links
doku/apache_proxy.txt · Zuletzt geändert: 2011-10-21 18:52 von 127.0.0.1