Montag, 6. Oktober 2008

Linux - Debian - Etch - Apache als Serverportal

Einrichten eines Serverportals mit automatischem Redirect auf
unterschiedliche Applikationen

Ausgangslage:
mehrere Applikationen laufen im internen Netz auf verschiedenen tomcat-ports und sollen vom internet alle über Port 80 erreichbar sein.
die Applikationen laufen alle auf einem Server (Serverportal) gemeinsam in einer dort laufenden virtuellen Maschine
zb.:
- Serverportal 192.168.0.20
- VmWare-Server (VMS1) am Serverportal: 192.168.0.91
- Applikation1 auf VMS1: Port 8081
- Applikation2 auf VMS1: Port 8082


1.Schritt: Anlegen eines domainnames pro Applikation
zb. via DYNDNS.org: app1.dyndns.org, app2.dyndns.org


2.Schritt: Weiterleitung in der Router-Firewall einstellen
Port 80 auf Port 8080 aufs Serverportal 192.168.0.20


3.Schritt: Installieren von Apache
apt-get install apache2
aptitude: hinzufügen von libapache2-mod-proxy-html
oder
apt-get install libapache2-mod-proxy-html

4.Schritt: Module aktivieren
a2enmod proxy
a2enmod proxy_html
a2enmod proxy_http


5.Schritt: proxy.conf-Link löschen
löschen des links proxy.conf aus dem verzeichnis /etc/apache2/mods-enabled


6.Schritt: sites-available erstellen
im Ordner "/etc/apache2/sites-available"
- datei anlegen "appname1"
- datei anlegen "appname2"

Inhalt appname1:
<VirtualHost *:8080>
ProxyRequests Off

DocumentRoot /var/www/
CustomLog /var/log/www/appname1.log combined

ServerName appname1.dyndns.org

ProxyVia On

ProxyPass / http://192.168.0.91:8081/
ProxyPassReverse / http://192.168.0.91:8081/

</VirtualHost>


Inhalt appname2:
<VirtualHost *:8080>
ProxyRequests Off

DocumentRoot /var/www/
CustomLog /var/log/www/appname1.log combined

ServerName appname2.dyndns.org

ProxyVia On

ProxyPass / http://192.168.0.91:8082/
ProxyPassReverse / http://192.168.0.91:8082/

</VirtualHost>


7.Schritt: links im apache-verzeichnis erstellen
a2ensite appname1
a2ensite appname2


8.Schritt: default-site deaktivieren
a2dissite default


9.Schritt: apache.conf anpassen
/etc/apache2/apache2.conf

vor "# Include the virtual host configurations" folgende zeilen einfügen:
ProxyRequests off
NameVirtualHost *:8080

NameVirualHost * suchen und auskommentieren oder löschen


10.Schritt: Listen Port ändern
/etc/apache2/ports.conf
ändern: Listen 80 auf Listen 8080
erste zeile löschen: NameVirtualHost *:80


11.Schritt: log-verzeichnis anlegen:
cd /var/log
mkdir www


12.Schritt: apache neu starten
/etc/init.d/apache2 restart

Keine Kommentare: