Apache HTTP Server CentOS 6 - mod_proxy_ajp - Apache Tomcat Kommunikation
Die Konfiguration des mod_proxy_ajp ist im Vergleich zum mod_jk viel einfacher und bietet auch andere Möglichkeiten. Jedoch ist ein grosser Nachteil aus meiner Sicht, dass alle Anfragen (auch *.html-Seiten) so an den Apache Tomcat weitergeleitet werden.
WICHTIG Ab Version Apache HTTP Webserver 2.2.5 kann dies mit dem Befehl
ProxyPassMatch
jedoch ebenfalls erfolgen, wurde aber von mir noch nicht getestet!
Die Konfiguration ist im Gegensatz zum mod_jk einfacher und sieht wie folgt aus:
Einbinden
Ab hier werden root
-Rechte zur Ausführung der nachfolgenden Befehle benötigt. Um root
zu werden geben Sie bitte folgenden Befehl ein:
$ su - Password:
Folgende Modifikationen sind an der Konfigurationsdatei /etc/httpd/conf/httpd.conf
durchzuführen:
Schritt 1
Laden der Module:
LoadModule proxy_module modules/mod_proxy.so LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
Schritt 2
Konfiguration des Modules:
Falls kein virtueller Host definiert ist, können folgende Konfigurationsangaben ebenfalls in der Datei /etc/httpd/conf/httpd.conf
definiert werden. Falls ein virtuellen Host definiert wurde, könnte dieser wie folgt aussehen:
# # tomcat.tachtler.net # <VirtualHost *:80> ServerAdmin webmaster@tachtler.net ServerName tomcat.tachtler.net ServerAlias www.tomcat.tachtler.net ServerPath / DocumentRoot "/var/www/html/tomcat" <Directory "/var/www/html/tomcat"> Options None AllowOverride AuthConfig Order allow,deny Allow from all </Directory> ProxyRequests Off ProxyPass /default ajp://127.0.0.1:8099/default ProxyPassReverse /default ajp://127.0.0.1:8099/default ProxyPass /host-manager ajp://127.0.0.1:8099/host-manager ProxyPassReverse /host-manager ajp://127.0.0.1:8099/host-manager ProxyPass /manager ajp://127.0.0.1:8099/manager ProxyPassReverse /manager ajp://127.0.0.1:8099/manager ProxyPass /docs ajp://127.0.0.1:8099/tomcat-docs ProxyPassReverse /docs ajp://127.0.0.1:8099/tomcat-docs # Rewrite the requestet URI, when following query was # NOT set to --> /default RewriteEngine on RewriteBase / RewriteRule ^$ %{REQUEST_URI}default [R=301,L] DirectoryIndex index.htm ErrorLog logs/tomcat_error.log CustomLog logs/tomcat_access.log combined </VirtualHost>
* Dies ist nur eine Beispielkonfiguration. Die Bedeutung der einzelnen Befehle kann in der Dokumentation Apache Module mod_proxy detailliert nachgelesen werden
- ProxyRequests Off
Deaktivieren der Eigenschaft als Standard Proxy zu fungieren!
- ProxyPass
Alles was an die Anwendung im Verzeichnis und in der URL default
gerichtet wird soll an den Apache Tomcat weitergeleitet erden, gleichzeitig wird das Verzeichnis default
zum Wurzelverzeichnis ROOT
bei diesem Aufruf!
- ProxyPassReverse
Dies dient der „Rückwertsauflösung“ (reverse) der gestellten Anfragen.