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

Die Version 7 des Apache Tomcat befindet im Extra-Repository:

# 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