Methoden und Schritte zum Bereitstellen mehrerer War-Pakete in Tomcat

Methoden und Schritte zum Bereitstellen mehrerer War-Pakete in Tomcat

1 Hintergrund

JDK1.8-u181 und Tomcat8.5.53 wurden installiert.

Nach der Installation sind JAVA_HOME und Path in den Umgebungsvariablen konfiguriert. Es ist mit JRE ausgestattet, nicht mit JDK.

Zwei Kriegspakete müssen veröffentlicht werden, MES und ERP.

2 Tomcat installieren

Ich habe die EXE-Datei zur Installation verwendet und tomvat_home nach der Installation nicht konfiguriert (weil ich nicht weiß, ob es konfiguriert werden muss).

3 Ordner kopieren

3.1 InstallationsverzeichnisconfCatalina

Catalina ist ein Ordner. Kopieren Sie Catalina in zwei Ordner, einen mit dem Namen CatalinaMES und den anderen mit dem Namen CatalinaERP. Legen Sie beide in das Installationsverzeichnis\conf.

3.2 Installationsverzeichnis webapps

webapps ist auch ein Ordner. Erstellen Sie zwei Kopien, eine mit dem Namen webappsMES und die andere mit dem Namen webappsERP, und platzieren Sie beide im Installationsverzeichnis.

Das War-Paket des MES-Projektes befindet sich im Installationsverzeichnis\webappsMES

Das War-Paket des ERP-Projektes befindet sich im Installationsverzeichnis\webappsERP

4 Ändern Sie die Konfigurationsdatei

Ändern Sie den Inhalt im Installationsverzeichnis\conf\server.xml

<?xml version="1.0" encoding="UTF-8"?>

<Server-Port="-1" shutdown="HERUNTERFAHREN">
<Listener-Klassenname="org.apache.catalina.startup.VersionLoggerListener" />

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

<Listener-Klassenname="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
<Listener-Klassenname="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
<Listener-Klassenname="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />

<GlobalNamingResources>

<Ressourcenname="Benutzerdatenbank" auth="Container"
Typ="org.apache.catalina.UserDatabase"
Beschreibung="Aktualisierbare und speicherbare Benutzerdatenbank"
Fabrik="org.apache.catalina.users.MemoryUserDatabaseFactory"
Pfadname="conf/tomcat-users.xml" />
</GlobalNamingResources>

<!-- Nachrichten bereitstellen -->
<Dienstname="CatalinaMES">

<Anschlussport="8085" Protokoll="HTTP/1.1"
VerbindungsTimeout="20000"
UmleitungsPort="8443" />

<Engine-Name="CatalinaMES" Standardhost="localhost">

<Realm-Klassenname="org.apache.catalina.realm.LockOutRealm">

<Realm-Klassenname="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="Benutzerdatenbank"/>
</Reich>

<Hostname="localhost" appBase="webappsMES"
unpackWARs="true" autoDeploy="true">

<Context path="/mes-manager-web" docBase="C:\Programme\Tomcat 8.5\webappsMES\mes-manager-web" debug="0" privileged="true"></Context>

<Valve-Klassenname="org.apache.catalina.valves.AccessLogValve" Verzeichnis="Protokolle"
Präfix="localhost_access_log" Suffix=".txt"
Muster="%h %l %u %t &quot;%r&quot; %s %b" />

</Host>
</Engine>
</Dienst>

<!-- ERP bereitstellen -->
<Dienstname="CatalinaERP">

<Anschlussport="8082" Protokoll="HTTP/1.1"
VerbindungsTimeout="20000"
UmleitungsPort="8443" />

<Engine-Name="CatalinaERP" Standardhost="localhost">


<Realm-Klassenname="org.apache.catalina.realm.LockOutRealm">

<Realm-Klassenname="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="Benutzerdatenbank"/>
</Reich>

<Hostname="localhost" appBase="webappsERP"
unpackWARs="true" autoDeploy="true">

<Context path="/erp-manager-web" docBase="C:\Programme\Tomcat 8.5\webappsERP\erp-manager-web" debug="0" privileged="true"></Context>


<Valve-Klassenname="org.apache.catalina.valves.AccessLogValve" Verzeichnis="Protokolle"
Präfix="localhost_access_log" Suffix=".txt"
Muster="%h %l %u %t &quot;%r&quot; %s %b" />

</Host>
</Engine>
</Dienst>
</Server>

Darunter stellt ein <service>-Knoten einen Dienst dar, also ein bereitgestelltes Projekt.

Das Namensattribut des <service>-Knotens wird in den Namen des entsprechenden Catalina-Ordners geändert. Das Namensattribut des Knotens <Engine> wird ebenfalls in den Namen des entsprechenden Catalina-Ordners geändert.

Das Portattribut des <Connector>-Knotens ist die Portnummer des Projekts. Achten Sie nur darauf, dass es nicht zu Konflikten kommt.

Die appBase-Eigenschaft des Knotens <Host> wird in den entsprechenden Webapps-Ordner geändert.

Das Pfadattribut des Knotens <Context> ist die für den Zugriff verwendete Adresse, d. h. die Zugriffsadresse des Projekts ist服務器ip:項目端口號/path屬性的值. Laut der aktuellen Konfiguration lautet die lokale Zugangsadresse meines MES-Projektes 127.0.0.1:8085/mes-manager-web . Das docBase-Attribut des <Context>-Knotens ist der lokale Pfad des War-Pakets des Projekts. Ändern Sie es einfach in den absoluten Pfad des War-Pakets auf dem lokalen Computer.

5. Ändern Sie startup.bat und shutdown.bat

Editieren Sie das Installationsverzeichnis\bin\startup.bat und fügen Sie am Anfang folgendes hinzu:

SET JAVA_HOME=C:\Programme\Java\jre1.8.0_181
SET TOMCAT_HOME=C:\Programme\Tomcat 8.5

Der erste ist der Installationsort von JRE und der zweite ist der Installationspfad von Tomcat.

Fügen Sie denselben Inhalt an derselben Stelle in shutdown.bat hinzu.

6 Doppelklicken Sie auf startup.bat, um Tomcat auszuführen

Beachten Sie, dass zu diesem Zeitpunkt ein DOS-Fenster geöffnet wird, das die Projektstartinformationen wie die IDEA-Konsole druckt. Wenn das Projekt erfolgreich gestartet wurde, schließen Sie dieses DOS-Fenster nicht, sondern lassen Sie es geöffnet. Wenn Sie Tomcat ausschalten, wird es nicht mehr ausgeführt.

7 Hinweise

Wenn mehrere Projekte das Spring-Framework verwenden, kann beim Konfigurieren eines Tomcat mit mehreren Ports und mehreren Anwendungen ein Fehler auftreten.

Lösung: Fügen Sie der web.xml jedes Projekts den folgenden Knoten hinzu:

<Kontext-Parameter>
<param-name>RootKey für Web-App</param-name>
<param-value>webapp.root</param-value>
</Kontext-Param>

Stellen Sie sicher, dass sich der <Param-Name> der Datei web.xml jedes Projekts vom <Param-Wert> unterscheidet, der dem webAppRootKey entspricht. Beispielsweise verwendet der erste webapp.root1, der zweite webapp.root2 und so weiter.

Achten Sie außerdem darauf, ob die Firewall des Servers einen externen Zugriff auf den zu konfigurierenden Port zulässt.

Dies ist das Ende dieses Artikels über die Schritte zum Bereitstellen mehrerer War-Pakete mit Tomcat. Weitere Informationen zum Bereitstellen mehrerer War-Pakete mit Tomcat finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Idee in einem War-Paket verpackt, auf Tomcat bereitgestellt und Probleme mit dem Zugriffspfad (Abbildung und Text)
  • Drei Möglichkeiten zum Bereitstellen von Webanwendungen im Tomcat-Stammverzeichnis
  • Lösung für das Problem, dass die SpringBoot-Anwendung beim Bereitstellen auf Tomcat nicht gestartet werden kann
  • Zusammenfassung von 4 Methoden zum Bereitstellen von Webanwendungen mit Tomcat (empfohlen)
  • Detaillierte Schritte zum Bereitstellen von Tomcat- und Java-Anwendungen in Docker
  • Über das Problem, dass die von Tomcat bereitgestellte Anwendung nicht auf die Front-End-Seite zugreifen kann

<<:  Implementierung der schnellen Projektkonstruktion von vue3.0+vant3.0

>>:  Detaillierte Analyse von or, in, union und Indexoptimierung in MySQL

Artikel empfehlen

Details zur Funktionsverschachtelung und zu Funktionsabschlüssen in js

Inhaltsverzeichnis 1. Geltungsbereich 2. Funktion...

Analyse des Problems der Hyper-V-Installation unter CentOS 8

CentOS 8 ist schon seit längerem auf dem Markt. A...

Tiefgreifendes Verständnis von Javascript-Prototypen und Prototypenketten

Inhaltsverzeichnis 1. Was ist ein Prototyp? 2. Pr...

Einfache Verwendung des Vue-Busses

Einfache Verwendung des Vue-Busses Beschreibung d...

Detaillierte Beispiele zur Ajax-Verwendung in js und jQuery

Inhaltsverzeichnis Natives JS So senden Sie eine ...

So führen Sie den Betrieb nach dem Verlassen des Docker-Containers weiter aus

Phänomen: Führen Sie ein Image aus, zum Beispiel ...

Detaillierte Erklärung des Unterschieds zwischen in und exists in MySQL

1. Bereiten Sie sich im Voraus vor Zu Ihrer Beque...

Implementierung der DOM-Operation in React

Inhaltsverzeichnis Vorherige Wörter Anwendungssze...

Schnelles Verständnis des Vue-Routing-Navigationsschutzes

Inhaltsverzeichnis 1. Globale Wache 1. Globale Fr...

Lassen Sie IE6, IE7, IE8 CSS3-abgerundete Ecken und Schattenstile unterstützen

Ich möchte eine Seite mit CSS3-abgerundeten Ecken...

Mybatis implementiert Details zum Abfangen und Ändern von SQL-Abfragen

Vorwort Eine der Funktionen eines Interceptors be...

Grafisches Installationstutorial für MySQL 8.0.17

In diesem Artikel finden Sie das grafische Tutori...

JavaScript, um den Effekt des Klickens auf das Untermenü zu erzielen

In diesem Artikel wird der spezifische JavaScript...

Detaillierte Erläuterung des Mysql-Kommunikationsprotokolls

1.Mysql-Verbindungsmethode Um das MySQL-Kommunika...