Tomcat Installieren

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen

Apache Tomcat installieren

Allgemein

Apache Tomcat ist ein Webserver (HTTP-Server), der in der Programmiersprache Java entwickelt ist. Er dient in erster Linie dazu, dynamische Web-Anwendungen zu betreiben, die ebenfalls in Java programmiert sind. Basis-Technologien sind Java-Servlets und Java Server Pages (JSP).

Spezielle Installation bei Hostsharing

In jedem dynamischen Webhosting-Paket der Hostsharing eG können einer (oder mehrere) Tomcat-Webserver betrieben werden.

Dazu muss die die kostenpflichtige Option "Betrieb eines eigenen Serverdienstes" gebucht werden.

Diese Anleitung dokumentiert die Installation des Apache Tomcat Servers als Paket-Admin in einem WEB-Paket bei Hostsharing. (Nicht SW-Paket) Mit der Einrichtung der Option "eigener Serverdienst" wird für das Paket eine oder mehrere IP-Ports reserviert, an die der eigene Daemon (also der Tomcat-Server) auf der paketeigenen IP-Adresse gebunden wird.

Installation

Die Tomcat-Distribution kann von den Apache-Servern heruntergeladen werden. Wir empfehlen die Installation des Tomcats im Paket, für die Tomcat-Software wird nur ca. 8 MB Speicherplatz benötigt.

Zur Zeit ist die Version 7.0.23 aktuell.

Die Software wird heruntergeladen und entpackt. Das Installationsverzeichnis wird in "tomcat7" umbenannt:

cd /home/pacs/xyz00
wget http://apache.mirror.iphh.net/tomcat/tomcat-7/v7.0.23/bin/apache-tomcat-7.0.23.tar.gz
tar xzf apache-tomcat-7.0.23.tar.gz
mv apache-tomcat-7.0.23 tomcat7
rm apache-tomcat-7.0.23.tar.gz

In der Hauptsache muss die Konfigurationsdatei "server.xml" im Verzeichnis "~/tomcat7/conf/" angepasst werden.

Beispiel für eine minimale "server.xml":

<?xml version='1.0' encoding='utf-8'?>
<Server port="-1" shutdown="SHUTDOWN">

  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />

  <GlobalNamingResources>

    <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />

  </GlobalNamingResources>

  <Service name="Catalina">

    <Connector 
           address="xyz00.hostsharing.net" port="31313" 
           protocol="AJP/1.3" redirectPort="443" />

    <Engine name="Catalina" defaultHost="xyz00.hostsharing.net">

      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>

      <Host name="xyz00.hostsharing.net" 
              appBase="../webapps/default" 
              unpackWARs="true" autoDeploy="true">
      </Host>

    </Engine>
  </Service>
</Server>

Angepasst werden müssen:

  • der Paketname (im Beispiel xyz00) und
  • der IP-Port (im Beispiel 31313)

Deployment einer Anwendung

Im der Beispiel-Konfiguration wurde das Verzeichnis "~/webapps/default" für die Anwendungen konfiguriert. Wir legen dieses Verzeichnis an und kopieren eine Beispielanwendung hinein:

cd /home/pacs/xyz00
mkdir webapps
mkdir webapps/default
cp -a tomcat7/webapps/examples webapps/default/

Nun können wir die HTTP-Requests, die an eine Domain im Paket gesendet werden, an den Tomcat weiterleiten. Das funktioniert über eine ".htaccess"-Datei, zum Beispiel im Verzeichnis "~/doms/example.org/htdocs":

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*) ajp://xyz00.hostsharing.net:31313/$1 [proxy,last]

Paketname und Port müssen wieder angepasst werden!

Dann können wir unsere Tomcat-Examples unter der URL "http://examples.org/examples/" erreichen.

Start des Tomcat Servers

Der Tomcat kann über die Skripte in "~/tomcat7/bin/" gestartet und gestoppt werden.

export JAVA_HOME=/opt/java/current60
cd /home/pacs/xyz00/tomcat7
./bin/catalina.sh start

Log-Ausgaben des Servers sind in "~/tomcat7/logs/catalina.out" zu finden.

Damit der Tomcat bei einem Reboot der Hostsharing-Server automatisch gestartet wird, kann "monit" als einfaches Überwachungswerkzeug genutzt werden. Ein Anleitung dazu gibt es in diesem Wiki: Monit_installieren Die Anleitung bezieht sich auf einen eigenen Apache-Webserver und muss entsprechend für Tomcat adaptiert werden.

Links