ubuntuusers.de

Hinweis: Dies ist ein statischer Snapshot unseres Wikis vom 25. März 2013 und kann daher nicht bearbeitet werden. Der aktuelle Artikel ist unter wiki.ubuntuusers.de zu finden.

mod proxy html

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

mod_proxy_html {en} ist ein Ausgabefilter, der HTML-Links so umschreiben kann, dass mehrere Webserver nahtlos miteinander kombiniert werden können.

So kann z.B. ein 2. Webserver (welchen z.B. Dienste wie ejabberd bereitstellen) unter http://server/ejabberd erreicht werden, obwohl der 2. Webserver auf der IP 127.0.0.1 und dem Port 5281 läuft. Die Hauptaufgabe (und damit der Unterschied zum "normalen" mod_proxy) besteht darin, dass das übertragene HTML so modifiziert wird, dass alle Links mit der veränderten Situation klar kommen.

Hier eine grafische Darstellung des Ganzen: mod_proxy_html.png Wie im Beispiel zu sehen wird man über http://server/ejabberd auf den eingebauten Webserver vom ejabberd umgeleitet. Alle Seiten, die der ejabberd sendet, werden durch mod_proxy_html so verändert, dass die Links mit http://server/ejabberd/ beginnen. So ist eine normale Funktion der ejabberd-Administrationsseiten gewährleistet. Natürlich funktioniert dieses Verfahren auch mit vielen anderen Diensten.

Vorbereitungen

Installation

mod-proxy-html ist ein Apache-Modul, das nicht von Haus aus installiert wird. Man kann es jedoch über das Paket

  • libapache2-mod-proxy-html (universe' )

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install libapache2-mod-proxy-html 

sudo aptitude install libapache2-mod-proxy-html 

sehr einfach nachinstallieren.

Modul aktivieren

Anschließend müssen die Module mittels der Befehle [3]

sudo a2enmod proxy
sudo a2enmod proxy_html
sudo a2enmod proxy_http 

aktiviert werden.

Hinweis:

Anschließend muss der Apache Webserver neu gestartet werden (force-reload)[4].

Einrichtung

Zum Verwenden des Moduls muss die VirtualHost-Konfiguration entsprechend angepasst werden. Hier ein Ausschnitt einer möglichen Konfiguration:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
<VirtualHost *>
...
        ProxyRequests Off
        <Proxy *>
                Order deny,allow
              Allow from all
        </Proxy>
        ProxyPass /ejabberd/ http://127.0.0.1:5281/
        ProxyPassReverse /ejabberd/ http://127.0.0.1:5281/
...
</VirtualHost>

Hinweis:

Nach dieser Änderung muss der Apache Webserver neu gestartet werden (reload)[4].

Achtung!

Wenn der ProxyRequests Off vergessen wird, arbeitet das unter mod_proxy_html liegende mod_proxy als Open Proxy, was ein Sicherheitsproblem darstellt!

ubuntuusers.local › WikiApachemod proxy html