Bereitstellung der Anwendung bei Tomcat Root

Stellen Sie die Anwendung bei Tomcat Root bereit

1. Überblick

In diesem kurzen Artikel wird die Bereitstellung einer Webanwendung im Stammverzeichnis eines Tomcat erläutert.

2. Grundlagen und Terminologie der Tomcat-Bereitstellung

Die Grundlagen zum Bereitstellen einer Anwendung für Tomcat finden Sie in diesem Handbuch:How to Deploy a WAR File to Tomcat.

Einfach ausgedrückt, Webanwendungen werden unter$CATALINA_HOME\webapps platziert, wobei$CATALINA_HOME das Installationsverzeichnis des Tomcat ist.

Der Kontextpfad bezieht sich auf den Speicherort relativ zur Serveradresse, der den Namen der Webanwendung darstellt.

Standardmäßig leitet Tomcat es vom Namen der bereitgestellten War-Datei ab. Wenn wir also eine DateiExampleApp.war bereitstellen, ist sie unterhttp://localhost:8080/ExampleApp verfügbar. I. e. Der Kontextpfad ist/ExampleApp.

Wenn wir diese App jetzt stattdessen beihttp://localhost:8080/ verfügbar haben müssen, haben wir einige Optionen, die wir in den folgenden Abschnitten diskutieren werden.

Eine detailliertere Erläuterung des Kontextkonzepts von Tomcat finden Sie in den offiziellenTomcat documentation.

3. Bereitstellen der App alsROOT.war

Die erste Option ist sehr einfach:we just have to delete the default /ROOT/ folder in $CATALINA_HOME\webapps, rename our ExampleApp.war to ROOT.war, and deploy it.

Unsere App wird jetzt beihttp://localhost:8080/ verfügbar sein.

4. Angeben des Kontextpfads inserver.xml

Die zweite Option besteht darin, den Kontextpfad der Anwendung inserver.xml (der sich bei$CATALINA_HOME\conf befindet) festzulegen.

Dazu müssen wir Folgendes in das<Host>-Tag einfügen:

Note: defining the context path manually has the side effect that the application is deployed twice by default: beihttp://localhost:8080/ExampleApp/ sowie beihttp://localhost:8080/.

Um dies zu verhindern, müssen wirautoDeploy=”false” unddeployOnStartup=”false” im Tag<Host> setzen:


    

    

Wichtig: Diese Option wird nicht mehr empfohlen, da Tomcat 5 die Kontextkonfigurationen invasiver macht, da die Dateiserver.xmlnicht neu geladen werden kann, ohne Tomcat neu zu starten.

5. Angeben des Kontextpfads in einer anwendungsspezifischen XML-Datei

Um dieses Problem mitserver.xmlzu vermeiden, haben wir die dritte Option: Wir legen den Kontextpfad in einer anwendungsspezifischen XML-Datei fest.

Daher müssen wir bei$CATALINA_HOME\conf\Catalina\localhost einROOT.xml mit folgendem Inhalt erstellen:

Zwei Punkte sind hier nichts wert.

Erstens müssen wir den Pfad nicht explizit wie in der vorherigen Option angeben - Tomcat leitet diesen aus dem Namen unsererROOT.xmlab.

Und zweitens: Da wir unseren Kontext in einer anderen Datei alsserver.xmldefinieren, müssen unseredocBaseaußerhalb von$CATALINA_HOME\webAppsliegen.

6. Fazit

In diesem Lernprogramm wurden verschiedene Optionen für die Bereitstellung einer Webanwendung im Stammverzeichnis eines Tomcat erläutert.