1. Konfiguration des Tomcat -Server -Ports
Alle Konfigurationen von Tomcat werden im Conf -Ordner platziert, und die Server.xml -Datei in der Kernkonfigurationsdatei.
Wenn Sie den Startport des Tomcat -Servers ändern möchten, können Sie den Port im Connector -Knoten in der Konfigurationsdatei server.xml ändern
Beispiel: Ändern Sie den Startport des Tomcat -Servers vom Standard -Port 8080 auf 8081
Tomcat Server Startup Port Standardkonfiguration
<Connector Port = "8080" Protocol = "HTTP /1.1" ConnectionTimeout = "20000" redirectPort = "8443" />
Ändern Sie den Tomcat -Server -Startport für Port 8081
<Connector Port = "8081" Protocol = "HTTP /1.1" ConnectionTimeout = "20000" redirectPort = "8443" />
Dadurch wird der ursprüngliche Standard -Tomcat -Standard -Port 8080 in Port 8081 geändert. Es ist zu beachten, dass der Tomcat -Server nach dem Neustart erneut neu gestartet werden muss, sobald die Datei *.xml auf dem Server geändert wurde. Da der Tomcat -Startport in der Datei server.xml auf 8081 geändert wurde, wird der Tomcat -Server mit Port 8081 gestartet, wie in der folgenden Abbildung gezeigt:
Um auf den Tomcat -Server zuzugreifen, müssen Sie auch mit dem neuen Zugriffsport darauf zugreifen: http: // localhost: 8081/, wie in der folgenden Abbildung gezeigt:
2. Mapping -Methode des virtuellen Tomcat -Server -Virtual -Verzeichnisses
Nachdem die Webanwendung entwickelt wurde, müssen Sie das Verzeichnis übergeben, in dem sich die Webanwendung für die Verwaltung auf den Webserver befindet. Dieser Prozess wird als Zuordnung virtueller Verzeichnisse bezeichnet. Wie kann man auf Tomcat -Server virtuelle Verzeichnisse abbilden? Insgesamt gibt es verschiedene Möglichkeiten:
2.1. Die Zuordnungsmethode der virtuellen Verzeichnisse 1: Konfigurieren Sie im Hostelement der Server.xml -Datei
Ermitteln Sie das Hostelement der Datei server.xml, wie in der folgenden Abbildung gezeigt:
Hinzufügen von <Host> </host> zu den Tags <context path = "/javawebapp" docbase = "f:/javawebDemoproject"/> zum Abbau des Javawebdemoproject Javawebapp -Anwendung auf dem F -Datenträger auf dem virtuellen Verzeichnis von Javawebapp. Das virtuelle Verzeichnis von Javawebapp wird vom Tomcat -Server verwaltet. Javawebapp ist ein Verzeichnis, das auf der Festplatte nicht existiert. Es ist ein Verzeichnis, das wir beiläufig schreiben, ein virtuelles Verzeichnis, daher wird es als "virtuelles Verzeichnis" bezeichnet. Der Code ist wie folgt:
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> <Context path="/JavaWebApp" docBase="F:/JavaWebDemoProject" /> </Host>
Unter ihnen repräsentiert der Kontext einen Kontext, der eine Javaweb -Anwendung darstellt. Das Kontextelement hat zwei Attribute.
Ⅰ.Path: Wird verwendet, um virtuelle Verzeichnisse zu konfigurieren, und muss mit "/" beginnen.
Ⅱ.Docbase: Konfigurieren Sie dieses virtuelle Verzeichnis so, dass sie dem Verzeichnis entspricht, in dem sich die Webanwendung auf der Festplatte befindet.
Verwenden Sie den Browser, um die 1.JSP -Webressource im virtuellen Verzeichnis von "/Javawebapp" zuzugreifen. Das Zugangsergebnis ist wie folgt:
1.JSP kann normal zugegriffen werden, was bedeutet, dass wir den Javawebdemoproject Javawebapp erfolgreich auf das virtuelle Verzeichnis von Javawebapp abgebildet haben. Der Zugriff auf "/javawebapp/1.jsp" entspricht dem Zugriff auf "f: /javawebdemoproject/1.jsp".
Hinweis: Nach Tomcat 6 wird nicht mehr empfohlen, das Konfigurationskontextelement in der Datei server.xml zu verwenden, um virtuelle Verzeichnis -Mapping hinzuzufügen, da jedes Mal, wenn die Datei server.xml geändert wird, der Tomcat -Server neu gestartet werden muss, bevor die Server.xml -Datei neu geladen werden kann. In der Tomcat -Server -Dokumentation finden Sie eine solche Beschreibung http: // localhost: 8080/docs/config/context.html:
Es wird nicht empfohlen, <Context> Elemente direkt in die Server.xml -Datei zu platzieren. Dies liegt daran, dass die Änderung der Kontextkonfiguration invasiverer wird, da die Datei "CONF/Server.xml" nicht ohne Neustart von Tomcat neu geladen werden kann.
Einzelne Kontextelemente können explizit definiert werden:
In einer einzelnen Datei unter /meta-inf/context.xml in den Anwendungsdateien. Optional (basierend auf dem CopyxML -Attribut des Hosts) kann dies in $ Catalina_base/conf/[engineName]/[hostname]/kopiert und in Erweiterung der Basisdatei in der Anwendung umbenannt.
In einzelnen Dateien (mit einer ".xml" -Eränge) in $ catalina_base/conf/[engineName]/[hostname]/Verzeichnis. Der Kontextpfad und -version werden aus dem Grundnamen der Datei abgeleitet (der Dateiname weniger als .xml -Erweiterung). Diese Datei hat immer Vorrang vor einer beliebigen Kontext.xml-Datei, die im Meta-Inf-Verzeichnis der Webanwendung verpackt ist.
In einem Hostelement in der Hauptstufe conf/server.xml.
2.2. Die Zuordnungsmethode von virtuellen Verzeichnissen lautet 2: Lassen Sie den Tomcat -Server automatisch zuordnen
Der Tomcat -Server verwaltet automatisch alle Webanwendungen im WebApps -Verzeichnis und ordnet ihn in virtuelle Verzeichnisse ab. Mit anderen Worten, auf die Webanwendungen im Tomcat Server -WebApps -Verzeichnis können direkt von der Außenwelt zugegriffen werden.
Zum Beispiel: Kopieren Sie den JavawebDemoproject Javaweb unter F -Disk direkt in das Tomcat Server -WebApps -Verzeichnis, wie in der folgenden Abbildung gezeigt:
Zu diesem Zeitpunkt kartiert der Tomcat -Server automatisch ein virtuelles Verzeichnis "/javawebdemoproject" mit demselben Namen für die JavawebDemoproject Javaweb -Anwendung. Anschließend können Sie den Browser verwenden, um auf die Ressourcen der Javaweb -Anwendung zuzugreifen, wie in der folgenden Abbildung gezeigt:
2.3. Die Mapping -Methode der virtuellen Verzeichnisse drei
Siehe Dokumentation von Tomcat Server:
In einzelnen Dateien (mit einer ".xml" -Eränge) in $ catalina_base/conf/[engineName]/[hostname]/Verzeichnis. Der Kontextpfad und -version werden aus dem Grundnamen der Datei abgeleitet (der Dateiname weniger als .xml -Erweiterung). Diese Datei hat immer Vorrang vor einer beliebigen Kontext.xml-Datei, die im Meta-Inf-Verzeichnis der Webanwendung verpackt ist.
Es bedeutet: Fügen Sie eine Datei mit XML als Erweiterung im Verzeichnis/conf/catalina/localhost des Tomcat -Servers hinzu. Der Name der XML -Datei kann willkürlich sein, z. B. die AA.xml unten. Beachten Sie, dass der Satz "der Kontextpfad und die Version aus dem Grundnamen der Datei abgeleitet werden". Die Bedeutung dieses Satzes wird als "das Pfadattribut des Kontextelements aus dem Namen der XML -Datei" übersetzt. Wie oben erwähnt, wird das Pfadattribut des Kontextelements verwendet, um den Namen des virtuellen Verzeichnisses zu konfigurieren, sodass der Name des virtuellen Verzeichnisses der Name der XML -Datei ist.
$ Catalina_base bezieht sich auf das Stammverzeichnis des Tomcat -Servers. [EngineName] bezieht sich auf den vom Tomcat -Server verwendeten Engine -Namen. Der von Tomcat verwendete Motor ist Catalina.
Fügen Sie die Javaweb -Anwendung von Kontextelementen in der AA.XML -Datei hinzu, der Code lautet wie folgt:
<Context docbase = "f: /javawebdemoproject" />
Hinweis: Das Pfadattribut wird im Kontextelement nicht angegeben, um den Namen des virtuellen Verzeichnisses festzulegen. Dann ist der Name des von "f:/javawebdemoproject" abgebildeten Virtual Directory Shenma, der der Name der derzeit bearbeiteten XML -Datei ist.
Der größte Vorteil der Verwendung dieser Methode zur Zuordnung von virtuellen Verzeichnissen besteht darin, dass Sie den Tomcat -Server nach der Änderung der Konfigurationsdatei nicht neu starten müssen. Ändern Sie beispielsweise AA.xml in BB.xml. Der Tomcat-Server wird den Kontext automatisch [/AA] und dann automatisch Informationen: Bereitstellung des Konfigurationsdeskriptor
3.. Tomcat Server -Konfiguration Virtueller Host
3.1. Konfigurieren Sie den virtuellen Host
Das Konfigurieren eines virtuellen Hosts besteht darin, eine Website zu konfigurieren.
Um einen virtuellen Host (Website) auf dem Tomcat -Server zu konfigurieren, müssen Sie die Konfigurationsdatei von Server.xml im Ordner des Conf ändern, das Hostelement zum Konfigurieren, den Server.xml öffnen und einen virtuellen Host (Website) mit dem Namen Localhost auf dem Tomcat -Server sehen, wie in der folgenden Abbildung gezeigt:
Normalerweise setzen wir die entwickelte Javaweb -Anwendung in den WebApps -Ordner ein und können dann mit dem "http: // localhost: port number/javawebappname" darauf zugreifen. Tatsächlich greifen wir auf den virtuellen Host (Host) zu, dessen Name "Localhost" ist. Dieser virtuelle Host verwaltet alle Webanwendungen im WebApps -Ordner.
Zum Beispiel: http: // localhost: 8080/javawebdemoproject/1.jsp. Diese URL -Adresse greift auf die 1.JSP -Webressource in der JavawebDemoproject -Anwendung unter dem virtuellen Host namens Localhost zu.
Wir können einen virtuellen Host auf folgende Weise konfigurieren, z. B.:
<Host name = "www.gacl.cn" Appbase = "f:/javawebapps"> </host>
Hier haben wir eine neue Konfiguration eines virtuellen Hosts. Der Name des virtuellen Hosts lautet "www.gacl.cn". Der virtuelle Host "www.gacl.cn" verwaltet jetzt alle Webanwendungen im Ordner javawebapps. Wenn wir den Domain -Namen "www.baidu.com" im Internet verwenden, um die Website von Baidu zu besuchen, besuchen wir tatsächlich einen virtuellen Host mit dem Namen "www.baidu.com". Wenn wir also mit dem Namen "www.gacl.cn" auf den virtuellen Host zugreifen möchten, können wir den "Domain -Namen (www.gacl.cn)" verwenden, um darauf zuzugreifen. Beachten Sie, dass Appbase = "F:/Javawebapps". Der Ordner javawebapps hier repräsentiert nicht das Stammverzeichnis eines Projekts, sondern ein Ordner, der eine oder mehrere Javaweb -Anwendungen speichert, wie in der folgenden Abbildung gezeigt:
Es ist wie im WebApps -Ordner des Tomcat -Servers, der viele Javaweb -Anwendungen speichert.
3.2. Registrieren Sie den Domain -Namen im Windows -System
Wenn auf den konfigurierten Host (Website) über den Domänennamen extern zugegriffen werden möchte, müssen Sie den Domänennamen registrieren, der verwendet wird, wenn Sie auf die Website im DNS -Server oder im Windows -System zugreifen und die Hosts -Datei im Verzeichnis "C:/Window/System32/Treiber/etc" finden, wie in der folgenden Abbildung gezeigt:
Bearbeiten Sie diese Datei und binden Sie den Domänennamen und die IP -Adresse der neu hinzugefügten Website zusammen, damit wir den Domain -Namen www.gacl.cn im Browser verwenden können, um auf die im virtuellen Hostnamen verwalteten Webanwendungen zuzugreifen, die im virtuellen Hostnamen www.gacl.cn verwaltet wurden.
Verwenden Sie den Browser, um auf die 1.JSP -Webressource unter der Webanwendung von Javawebdemo1 unter dem Domain -Namen "www.gacl.cn" über den Domain -Namen "www.gacl.cn" zugreifen. Der virtuelle Host "www.gacl.cn" eröffnet einen 8080 -Port. Benutzer können nur über diesen 8080 -Port auf die Webanwendung von JavawebDemo1 auf die 1.JSP -Webressource zugreifen
4.. Der Interaktionsprozess zwischen dem Browser und dem Server
4.1. Browser- und Server -Interaktionsdiagramm
Browser- und Server -Interaktionsdiagramm
Wenn wir den Browser öffnen und die URL -Adresse "http://www.gacl.cn:8080/javawebdemo1/1.jsp" in der Adressleiste des Browsers auf die 1.JSP -Webressource auf dem Server durchführen. Wie sehen wir den Inhalt der 1.JSP -Webressource im Browser?
Der Browser und Server machen Folgendes aus:
1. Der Browser durchsucht den Hostnamen, der dem Hostnamen in der Hosts -Datei des Betriebssystems basierend auf dem Hostnamen "www.gacl.cn" entspricht.
2. Wenn der Browser die entsprechende IP -Adresse in der Hosts -Host -Datei des Betriebssystems nicht findet, wechseln Sie zum DNS -Server im Internet, um die entsprechende IP -Adresse des Hosts "www.gacl.cn" zu finden.
3. Nachdem der Browser die entsprechende IP -Adresse des Hosts "www.gacl.cn" gefunden hat, verwendet er die IP -Adresse, um eine Verbindung zum Webserver herzustellen.
4. Nachdem der Browser eine Verbindung zum Webserver hergestellt hat, wird das HTTP -Protokoll verwendet, um eine Anforderung an den Server zu senden. Während des Sendens der Anforderung überträgt der Browser Daten in Form eines Streams an den Webserver an den Webserver, in dem der Webserver auf die Webanwendungs -Webressource zugänglich ist, wie in der folgenden Abbildung gezeigt:
Dies sind die an den Server übertragenen Daten, wenn der Browser eine Anforderung an den Webserver sendet. Lassen Sie uns den Inhalt von "get /javawebdemo1/1.jsp http/1.1" erläutern.
GET: Sagen Sie dem Webserver, dass der Browser Anforderungen an den Server in GET sendet.
/Javawebdemo1/1.jsp: Senden Sie dem Webserver an, dass der Browser in der JavawebDemo1 -Anwendung auf die 1.JSP -Webressource zugreifen möchte.
HTTP/1.1: teilt dem Webserver mit, dass der Browser ihn mit dem HTTP -Protokoll anfordert und die 1.1 -Version verwendet.
5. Nachdem der Browser die oben genannten 4 Schritte abgeschlossen hat, wartet er und wartet darauf, dass der Webserver die 1.JSP -Webressource überträgt, auf die auf die auf die er zugreifen möchte.
6. Nachdem der Server die vom Browser übertragenen Daten empfangen hat, beginnt er, die empfangenen Daten zu analysieren. Wenn der Server den Inhalt in "get /javawebdemo1/1.jsp http/1.1" analysiert, weiß er, dass der Clientbrowser in der JavawebDemo1 -Anwendung auf die 1.JSP -Webressource zugreifen möchte. Anschließend liest der Server den Inhalt in der 1.JSP -Webressource und überträgt den Leseinhalt in den Browser in Form eines Streams, wie in der folgenden Abbildung gezeigt:
Dies sind die Daten, die vom Webserver an den Browser übertragen werden.
7. Nachdem der Browser die vom Server an sie übertragenen Daten erhalten hat, kann die Daten dem Benutzer angezeigt werden, wie in der folgenden Abbildung gezeigt:
Der "Javawebdemo1", den ich gesehen habe, ist der Effekt des Browsers, das die vom Server zurückgesandten Daten analysiert.
Daten, die vom Server zurückgesendet wurden:
HTTP/1.1 200 OKServer: Apache-Coyote/1.1Content-Type: text/html;charset=ISO-8859-1Content-Length: 102Date: Mon, 19 May 2014 14:25:14 GMT<html> <head> <title>JavaWebDemo1</title> </head> <body> JavaWebDemo1 </body> </html>
Dies ist der Interaktionsprozess zwischen dem Browser und dem Server.
5. Die Zusammensetzungsstruktur von Javaweb -Anwendungen
Bei der Entwicklung von Javaweb -Anwendungen haben verschiedene Arten von Dateien strenge Speicherregeln. Andernfalls kann die Webanwendung nicht nur unzugänglich machen, sondern auch dazu führen, dass der Webserver einen Fehler startet.
Webroot → Das Verzeichnis, in dem sich die Webanwendung befindet. Im Allgemeinen muss das virtuelle Verzeichnis in diesem Ordner konfiguriert werden.
┝Web-Inf: Dieser Ordner muss sich im Webroot-Ordner befinden und in diesem Formular benannt werden, wobei Buchstaben aktiviert werden müssen.
┝Web.xml: Konfigurationsdatei mit Formatanforderungen muss diese Datei in diesem Formular benannt und im Web-Inf-Ordner platziert werden.
Das Format von web.xml kann direkt aus Tomcat verwiesen werden: Suchen Sie die Datei web.xml im Verzeichnis webapps/root/web-inf im Tomcat-Verzeichnis, kopieren Sie die Datei in unseren neu erstellten Web-INF-Ordner und ändern Sie die Web.xml-Datei, löschen Sie die Kommentare innerhalb des unten angegebenen Codes nur.
web.xml:
<? XSI: Schemalocation = "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" Version = "2.5"> </-Anname> -Werde.
Dies ist das Format der Datei web.xml.
Das Obige dreht sich alles um diesen Artikel, ich hoffe, es wird für das Lernen aller hilfreich sein.