Apache Tomcat è un contenitore web open source che ti permette di distribuire Servlet Java, JSP e Prese Web per eseguire un server web alimentato da Giava codice. Può anche essere identificato come un contenitore servlet multipiattaforma o un contenitore web.
Semplicemente, Tomcat è molto popolare tra molti stakeholder industriali a causa di molti vantaggi rispetto ad altri contenitori web sul mercato. Puoi creare archivi web dal tuo progetto Java e distribuirlo semplicemente all'interno di un contenitore Tomcat per ospitare un server web HTTP codificato da Java. Le industrie scelgono Apache Tomcat rispetto ad altri contenitori per i seguenti vantaggi.
Di solito, apache tomcat è un prodotto intuitivo che offre agli ingegneri lo spazio per implementare i propri GUERRA artefatti (Archivi Web) con modifiche minime alla configurazione.
Questo post si rivolge a un pubblico che sta già utilizzando Tomcat e sa come avviare e utilizzare il motore di Apache Tomcat.
In Apache Tomcat, GUERRE dovrebbe essere messo in applicazioni web
directory in cui il contenitore li distribuisce per impostazione predefinita. Semplicemente, applicazioni web directory funge da contenitore principale del codice Java per consentire a Tomcat di distribuirlo come server Web.
In uno scenario in cui è necessario ospitare più di un server Web da un singolo contenitore Tomcat, puoi utilizzare questo post come guida per realizzarlo. Ti mostrerò come distribuire più applicazioni Web o due server Web all'interno di un Tomcat da questo articolo.
Prerequisiti: Giava dovrebbe essere installato nel server. Preferibilmente 1.7.x o sopra. In questo tutorial ho Java 1.7 installato poiché utilizzo la versione Tomcat 8.0.37.
Puoi installare Giava usando il tuo gestore di pacchetti come yum o adatto come mostrato:
# yum install java [On CentOSsistemi basati] # apt-get install default-jre [OnDebian sistemi basati]
1. Prima crea un separato tomcat
utente che utilizza radice account.
# useradd tomcat. # passwd tomcat.
Ora accedi come tomcat utente e scarica l'ultimo pacchetto di apache tomcat dal sito ufficiale qui: https://tomcat.apache.org/ o in alternativa, puoi usare il seguente comando wget da scaricare direttamente nel terminale.
In questo caso, scarico Apache Tomcat, 8.5.5, che è una delle ultime versioni stabili rilasciate ormai.
$ wget http://redrockdigimark.com/apachemirror/tomcat/tomcat-8/v8.5.5/bin/apache-tomcat-8.5.5.tar.gz.
2. Una volta scaricato il file, decomprimi il contenuto utilizzando comando tar e visualizzare la struttura della directory come mostrato:
$ tar -xvf apache-tomcat-8.5.5.tar.gz. $ cd apache-tomcat-8.5.5/ $ ls -l.
Apache Tomcat – Elenco directory
totale 112. drwxr-x. 2 tomcat tomcat 4096 29 set 11:26 bin. drwx. 2 tomcat tomcat 4096 1 set 01:23 conf. drwxr-x. 2 tomcat tomcat 4096 29 set 11:26 lib. -rw-r. 1 tomcat tomcat 57092 1 set 01:23 LICENZA. drwxr-x. 2 tomcat tomcat 4096 1 set 01:21 log. -rw-r. 1 tomcat tomcat 1723 1 set 01:23 AVVISO. -rw-r. 1 tomcat tomcat 7063 1 set 01:23 RELEASE-NOTES. -rw-r. 1 tomcat tomcat 15946 1 set 01:23 RUNNING.txt. drwxr-x. 2 tomcat tomcat 4096 29 set 11:26 temp. drwxr-x. 7 tomcat tomcat 4096 1 set 01:22 webapps. drwxr-x. 2 tomcat tomcat 4096 1 set 01:21 lavoro.
3. La modifica della configurazione che stiamo cercando si trova all'interno del conf directory, viene utilizzato per posizionare tutti i file di configurazione che aiutano l'avvio di Tomcat.
Il contenuto del conf la directory appare come sotto.
$ cd conf/ $ ls -l.
conf – Elenco directory
totale 224. -rw. 1 tomcat tomcat 12502 1 set 01:23 catalina.policy. -rw. 1 tomcat tomcat 7203 1 set 01:23 catalina.properties. -rw. 1 tomcat tomcat 1338 1 set 01:23 context.xml. -rw. 1 tomcat tomcat 1149 1 set 01:23 jaspic-providers.xml. -rw. 1 tomcat tomcat 2358 1 set 01:23 jaspic-providers.xsd. -rw. 1 tomcat tomcat 3622 1 set 01:23 logging.properties. -rw. 1 tomcat tomcat 7283 1 set 01:23 server.xml. -rw. 1 tomcat tomcat 2164 1 set 01:23 tomcat-users.xml. -rw. 1 tomcat tomcat 2633 1 set 01:23 tomcat-users.xsd. -rw. 1 tomcat tomcat 168133 1 set 01:23 web.xml.
4. In questo caso, ciò che è importante per me è il server.xml
file. Quindi non ho intenzione di fare una spiegazione approfondita su altri file o directory.
Il server.xml è il file di configurazione che dice tomcat quale porta per avviarlo, quale contenuto della directory distribuire e molte altre configurazioni principali e di base.
Fondamentalmente sembra sotto dopo aver aperto il file.
$ vim server.xml.
5. Ora distribuiremo una nuova applicazione Web in Apache Tomcat, prima trova il punto in cui è chiuso il tag di servizio e inserire le righe sottostanti dopo il primo codice di matricola chiuso.
Server.xml – Nuova voce dell'app Web
Come vedi, ho cambiato la porta del connettore in 7070 nella voce appena inserita poiché il tomcat predefinito inizia con port 8080. Dopo averlo configurato completamente, ci saranno due server Web in esecuzione sotto le porte 8080 e 7070.
6. Dopo aver salvato la modifica apportata a server.xml
, crea una directory nell'Apache chiamata applicazioni web2
all'interno dell'apache main.
$ cd /home/tomcat/apache-tomcat-8.5.5/ $ mkdir webapps2.
Se osservi il server.xml
nuova voce che ho fornito, dovresti vedere che il nome del servizio, la base dell'app e il motore sono denominati come applicazioni web2. Questo è il motivo per cui ho creato la directory denominata applicazioni web2. Puoi crearne uno come desideri, ma assicurati di apportare modifiche alla voce quando necessario.
7. Per assicurarmi che il secondo server web sia attivo e funzionante, ho copiato il contenuto del applicazioni web directory per applicazioni web2 directory.
$ cp -r webapps/* webapps2/
8. Ora la parte emozionante. Avviamo il server e vediamo se funziona. Vai a bidone
directory ed eseguire il startup.sh
sceneggiatura. È possibile visualizzare i registri in catalina.out
il file risiede nella directory dei log.
$ cd cestino/ $ ./avvio.sh.
startup.sh – Output
Utilizzando CATALINA_BASE: /home/tomcat/apache-tomcat-8.5.5. Utilizzando CATALINA_HOME: /home/tomcat/apache-tomcat-8.5.5. Utilizzando CATALINA_TMPDIR: /home/tomcat/apache-tomcat-8.5.5/temp. Utilizzando JRE_HOME: /usr. Utilizzo di CLASSPATH: /home/tomcat/apache-tomcat-8.5.5/bin/bootstrap.jar:/home/tomcat/apache-tomcat-8.5.5/bin/tomcat-juli.jar. Tomcat ha iniziato.
9. Se fai riferimento ai log sarai in grado di vedere che entrambi applicazioni web
e applicazioni web2
vengono distribuiti e l'app viene avviata senza problemi.
$ cd log/ $ tail -25f catalina.out
catalina.out – Verifica dei log di Apache Tomcat
29-Sep-2016 12:13:51.210 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione web /home/tomcat/apache-tomcat-8.5.5/applicazioni web/examples. 29-Sep-2016 12:13:51.661 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione Web /home/tomcat/apache-tomcat-8.5.5/applicazioni web/examples ha terminato in 452 ms. 29-Sep-2016 12:13:51.664 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione web /home/tomcat/apache-tomcat-8.5.5/applicazioni web/docs. 29-Sep-2016 12:13:51.703 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione Web /home/tomcat/apache-tomcat-8.5.5/applicazioni web/docs è terminato in 39 ms. 29-Sep-2016 12:13:51.704 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione web /home/tomcat/apache-tomcat-8.5.5/applicazioni web/host-manager. 29-Sep-2016 12:13:51.744 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione Web /home/tomcat/apache-tomcat-8.5.5/applicazioni web/host-manager è terminato in 39 ms. 29-Sep-2016 12:13:51.748 INFO [principale] org.apache.coyote. AbstractProtocol.start Avvio ProtocolHandler [http-nio-8080] 29-Sep-2016 12:13:51.767 INFO [principale] org.apache.coyote. AbstractProtocol.start Avvio ProtocolHandler [ajp-nio-8009] 29-set-2016 12:13:51.768 INFO [principale] org.apache.catalina.core. StandardService.startInternal Avvio del servizio webapps2. 29-set-2016 12:13:51.768 INFO [principale] org.apache.catalina.core. StandardEngine.startInternal Avvio del motore servlet: Apache Tomcat/8.5.5. 29-Sep-2016 12:13:51.777 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/manager. 29-Sep-2016 12:13:51.879 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione Web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/manager ha terminato in 102 ms. 29-Sep-2016 12:13:51.879 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/ROOT. 29-Sep-2016 12:13:51.915 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione Web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/ROOT ha terminato in 35 ms. 29-Sep-2016 12:13:51.927 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/examples. 29-Sep-2016 12:13:52.323 INFO [localhost-startStop-1] org.apache.catalina.core. ApplicationContext.log ContextListener: contextInitialized() 29-Sep-2016 12:13:52.337 INFO [localhost-startStop-1] org.apache.catalina.core. ApplicationContext.log SessionListener: contextInitialized() 29-Sep-2016 12:13:52.341 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione Web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/examples ha terminato in 414 ms. 29-Sep-2016 12:13:52.341 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/docs. 29-Sep-2016 12:13:52.371 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione Web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/docs è terminato in 29 ms. 29-Sep-2016 12:13:52.371 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/host-manager. 29-Sep-2016 12:13:52.417 INFO [localhost-startStop-1] org.apache.catalina.startup. HostConfig.deployDirectory Distribuzione della directory dell'applicazione Web /home/tomcat/apache-tomcat-8.5.5/applicazioni web2/host-manager è terminato in 46 ms...
10. In questo scenario, l'IP del server che ho usato è 172.16.1.39 e puoi vedere che potrei avviare due server Web all'interno di un singolo contenitore Tomcat.
http://172.16.1.39:8080 [1a applicazione web] http://172.16.1.39:7070 [2a applicazione web]
Spero che tutti voi troviate questo articolo utile e divertente. Mantenersi in contatto con TecMint e sentiti libero di contattarmi per qualsiasi domanda riguardante questo articolo.