Apache Tomcat

Aus wiki.archlinux.de

Dieser Artikel wurde als veraltet markiert, und sollte kontrolliert, und gegebenfalls korrigiert bzw. aktualisiert werden.


Apache Tomcat ist ein in Java geschriebener Servlet-Container, welcher einen JSP-Compiler und einen kompletten HTTP-Server enthält. In diesem Artikel soll auf die Grundinstallation und die Einrichtung der administrativen Konten eingegangen werden.

Installation

Das Programm ist als tomcat7 in extra verfügbar, und kann von dort mittels Pacman installiert werden.

pacman -S tomcat7

Fehler 'Cannot locate Java Home'

Beim Starten des Tomcat-Daemon kommt es zu folgendem Fehler:

:: Starting tomcat7 daemon      [BUSY]
Cannot locate Java Home
                                [FAIL]

Zur Behebung dieses Fehlers sollte die Konfigurationsdatei /etc/conf.d/tomcat7 wiefolgt angepasst werden:

# The JAVA_HOME of the JVM for Tomcat to use
# (compulsory to enable tomcat to start at boot)
TOMCAT_JAVA_HOME=/opt/java

Administrative Konten anlegen

Für die Verwaltung des Servers über dessen Web-Interface sollten die entsprechenden Konten eingerichtet werden. Hierbei sollte in der Konfigurationsdatei /etc/tomcat7/tomcat-users.xml zumindest ein Nutzer der Rolle manager-gui festgelegt werden, um später Applikationen auf dem Server installieren zu können:

<tomcat-users>
        <role rolename="manager-gui"/>
        <user username="johndoe" password="sehrgeheim" roles="manager-gui"/>
</tomcat-users>

Server starten

Sind alle oben genannten Schritte erfolgreich, kann der Server gestartet werden:

# rc.d start tomcat7

Der Server sollte nun unter http://HOST_NAME:8080 erreichbar sein.

Der Server-Daemon lässt sich bei Bedarf auch in die rc.conf eintragen:

DAEMONS=(... tomcat7 ...)

Anbindung an Apache HTTP Server

mod_proxy

Seit Version 2.2 des Apache HTTP Server unterstützt mod_proxy auch das Apache JServ Protocol (AJP). Dadurch lässt sich die Anbindung in der Konfigurationsdatei /etc/httpd/conf/httpd.conf sehr einfach einrichten:

ProxyPass        /appname ajp://HOST_NAME:8009/appname
ProxyPassReverse /appname ajp://HOST_NAME:8009/appname

Startreihenfolge der Server-Daemons

Hierbei sollte Tomcat möglichst vor dem Apache HTTP Server gestartet werden:

DAEMONS=(... tomcat7 httpd ...)

Weblinks