Kif Tmexxi Applikazzjonijiet Multipli tal-Web f'Server Apache Tomcat wieħed


Apache Tomcat huwa kontenitur tal-web ta' sors miftuħ li jippermettilek tuża Java Servlets, JSP u Web Sockets biex tmexxi web server li jaħdem bil-kodiċi Java. Jista 'jiġi identifikat ukoll bħala kontenitur servlet cross-platform jew kontenitur tal-web.

Sempliċement, Tomcat huwa popolari ħafna fost bosta partijiet interessati industrijali minħabba ħafna vantaġġi fuq kontenituri tal-web oħra fis-suq. Tista 'toħloq arkivji tal-web mill-proġett Java tiegħek u sempliċement tużah f'kontenitur tomcat biex tospita web server HTTP kodifikat minn Java. L-industriji jagħżlu apache tomcat fuq kontenitur ieħor minħabba l-vantaġġi li ġejjin.

  1. Piż ħafif.
  2. Użat ħafna.
  3. Ħafna aktar mgħaġġla minn kontenituri oħra.
  4. Faċli biex tikkonfigura.
  5. Flessibbli ħafna.

Normalment, apache tomcat huwa prodott faċli għall-utent li jagħti spazju lill-inġiniera biex jużaw l-artifatti tal-GWERRA tagħhom (Arkivji tal-Web) b'bidliet minimi fil-konfigurazzjoni.

Din il-kariga qed timmira għal udjenza li diġà qed tuża t-tomcat u taf kif tibda u tuża l-magna apache tomcat.

F'apache tomcat, il-WARs għandhom jiddaħħlu fid-direttorju webapps li l-kontenitur jużahom b'mod awtomatiku. Sempliċement, id-direttorju tal-webapps jaġixxi bħala l-kontenitur ewlieni tal-kodiċi Java biex tomcat jużah bħala server tal-web.

F'xenarju li għandna bżonn nospitaw aktar minn servers tal-web wieħed minn kontenitur tomcat wieħed, tista' tuża din il-kariga bħala gwida biex twettaqha. Jien ser nuruk kif tuża applikazzjonijiet tal-web multipli jew żewġ servers tal-web fi ħdan tomcat wieħed minn dan l-artikolu.

Prerekwiżiti: Java għandu jiġi installat fis-server. Preferibbilment 1.7.x jew aktar. F'dan it-tutorja għandi Java 1.7 installat peress li nuża l-verżjoni tat-tomcat 8.0.37.

Tista' tinstalla Java billi tuża l-maniġer tal-pakketti tiegħek bħal yum jew apt kif muri:

# yum install java              [On CentOS based Systems]
# apt-get install default-jre   [On Debian based Systems]

Pass 1: Installa Apache Tomcat Server

1. L-ewwel oħloq utent separat ta' tomcat billi tuża kont ta' l-għeruq.

# useradd tomcat
# passwd tomcat

Issa illoggja bħala utent tomcat u niżżel l-aħħar bundle ta 'apache tomcat mis-sit uffiċjali hawn: kmand wget biex tniżżel direttament fit-terminal.

F'dan il-każ, niżżel Apache Tomcat, 8.5.5, li hija waħda mill-aħħar verżjonijiet stabbli rilaxxati sa issa.

$ wget http://redrockdigimark.com/apachemirror/tomcat/tomcat-8/v8.5.5/bin/apache-tomcat-8.5.5.tar.gz

2. Ladarba l-fajl ikun tniżżel, ikkompressa l-kontenut billi tuża l-kmand tal-qatran u ara l-istruttura tad-direttorju kif muri:

$ tar -xvf apache-tomcat-8.5.5.tar.gz
$ cd apache-tomcat-8.5.5/
$ ls -l
total 112
drwxr-x---. 2 tomcat tomcat  4096 Sep 29 11:26 bin
drwx------. 2 tomcat tomcat  4096 Sep  1 01:23 conf
drwxr-x---. 2 tomcat tomcat  4096 Sep 29 11:26 lib
-rw-r-----. 1 tomcat tomcat 57092 Sep  1 01:23 LICENSE
drwxr-x---. 2 tomcat tomcat  4096 Sep  1 01:21 logs
-rw-r-----. 1 tomcat tomcat  1723 Sep  1 01:23 NOTICE
-rw-r-----. 1 tomcat tomcat  7063 Sep  1 01:23 RELEASE-NOTES
-rw-r-----. 1 tomcat tomcat 15946 Sep  1 01:23 RUNNING.txt
drwxr-x---. 2 tomcat tomcat  4096 Sep 29 11:26 temp
drwxr-x---. 7 tomcat tomcat  4096 Sep  1 01:22 webapps
drwxr-x---. 2 tomcat tomcat  4096 Sep  1 01:21 work

Pass 2: Ikkonfigura Apache Tomcat Server

3. Il-bidla fil-konfigurazzjoni li qed infittxu tinsab fid-direttorju tal-konf, qed tintuża biex tpoġġi l-fajls tal-konfigurazzjoni kollha li tgħin lil tomcat jibda.

Il-kontenut tad-direttorju tal-konf jidher hawn taħt.

$ cd conf/
$ ls -l
total 224
-rw-------. 1 tomcat tomcat  12502 Sep  1 01:23 catalina.policy
-rw-------. 1 tomcat tomcat   7203 Sep  1 01:23 catalina.properties
-rw-------. 1 tomcat tomcat   1338 Sep  1 01:23 context.xml
-rw-------. 1 tomcat tomcat   1149 Sep  1 01:23 jaspic-providers.xml
-rw-------. 1 tomcat tomcat   2358 Sep  1 01:23 jaspic-providers.xsd
-rw-------. 1 tomcat tomcat   3622 Sep  1 01:23 logging.properties
-rw-------. 1 tomcat tomcat   7283 Sep  1 01:23 server.xml
-rw-------. 1 tomcat tomcat   2164 Sep  1 01:23 tomcat-users.xml
-rw-------. 1 tomcat tomcat   2633 Sep  1 01:23 tomcat-users.xsd
-rw-------. 1 tomcat tomcat 168133 Sep  1 01:23 web.xml

4. F'dan il-każ, dak li hu importanti għalija huwa l-fajl server.xml. Allura mhux se nagħmel spjegazzjoni fil-fond dwar fajls jew direttorji oħra.

Is-server.xml huwa l-fajl tal-konfigurazzjoni li jgħid lil tomcat liema port għandu jibda, liema kontenut tad-direttorju għandu juża u ħafna aktar konfigurazzjonijiet ewlenin u bażiċi.

Bażikament jidher bħal hawn taħt wara li tiftaħ il-fajl.

$ vim server.xml

Pass 3: Skjerament tal-Web Apps f'Apache Tomcat

5. Issa se niskjeraw applikazzjoni ġdida tal-web f'Apache tomcat, l-ewwel sib il-post fejn it-tikketta tas-servizz hija magħluqa u daħħal taħt il-linji wara l-ewwel tag tas-servizz magħluq.

<Service name="webapps2">
    <Connector port="7070" maxHttpHeaderSize="7192"
        maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
        enableLookups="false" redirectPort="7443" acceptCount="100"
        connectionTimeout="20000" disableUploadTimeout="true" />
        <Connector port="7072" 
        enableLookups="false" redirectPort="7043" protocol="AJP/1.3" />

    <Engine name="webapps2" defaultHost="localhost">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
            resourceName="UserDatabase"/>
            <Host name="localhost" appBase="webapps2"
                unpackWARs="true" autoDeploy="true"
                 xmlValidation="false" xmlNamespaceAware="false">
            </Host>
    </Engine>
</Service>

Kif tara, bdilt il-port tal-konnettur għal 7070 fid-dħul li għadu kif daħħal peress li t-tomcat default jibda bil-port 8080. Wara li waqqaf dan kompletament se jkun hemm żewġ servers tal-web li jaħdmu taħt il-portijiet 8080 u 7070.

6. Wara li ssejvja l-bidla li saret f'server.xml, oħloq direttorju fl-apache imsejjaħ webapps2 fi ħdan l-apache main.

$ cd /home/tomcat/apache-tomcat-8.5.5/
$ mkdir webapps2

Jekk tosserva l-server.xml l-entrata l-ġdida li pprovdejt, għandek tara li l-isem tas-servizz, il-bażi tal-app u l-magna huma msemmija bħala webapps2. Dik hija r-raġuni li ħloqt id-direttorju jismu webapps2. Tista' toħloq waħda kif tixtieq, imma kun żgur li tagħmel bidliet fid-dħul kif meħtieġ.

7. Biex niżgura li t-tieni web server ikun qed jaħdem, ikkupjt il-kontenut tad-direttorju tal-webapps fid-direttorju tal-webapps2.

$ cp -r webapps/* webapps2/

8. Issa l-parti eċċitanti. Se nibdew is-server u naraw jekk hux qed jaħdem. Mur fid-direttorju bin u wettaq l-iskrittura startup.sh. Tista' tara r-zkuk fil-fajl catalina.out li jinsab fid-direttorju taz-zkuk.

$ cd bin/
$ ./startup.sh
Using CATALINA_BASE:   /home/tomcat/apache-tomcat-8.5.5
Using CATALINA_HOME:   /home/tomcat/apache-tomcat-8.5.5
Using CATALINA_TMPDIR: /home/tomcat/apache-tomcat-8.5.5/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /home/tomcat/apache-tomcat-8.5.5/bin/bootstrap.jar:/home/tomcat/apache-tomcat-8.5.5/bin/tomcat-juli.jar
Tomcat started.

9. Jekk tirreferi r-reġistri tkun tista' tara li kemm webapps kif ukoll webapps2 huma skjerati u l-app tinbeda mingħajr ebda kwistjoni.

$ cd logs/
$ tail -25f catalina.out 
29-Sep-2016 12:13:51.210 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/tomcat/apache-tomcat-8.5.5/webapps/examples
29-Sep-2016 12:13:51.661 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/tomcat/apache-tomcat-8.5.5/webapps/examples has finished in 452 ms
29-Sep-2016 12:13:51.664 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/tomcat/apache-tomcat-8.5.5/webapps/docs
29-Sep-2016 12:13:51.703 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/tomcat/apache-tomcat-8.5.5/webapps/docs has finished in 39 ms
29-Sep-2016 12:13:51.704 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/tomcat/apache-tomcat-8.5.5/webapps/host-manager
29-Sep-2016 12:13:51.744 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/tomcat/apache-tomcat-8.5.5/webapps/host-manager has finished in 39 ms
29-Sep-2016 12:13:51.748 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [http-nio-8080]
29-Sep-2016 12:13:51.767 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler [ajp-nio-8009]
29-Sep-2016 12:13:51.768 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service webapps2
29-Sep-2016 12:13:51.768 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.5.5
29-Sep-2016 12:13:51.777 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/manager
29-Sep-2016 12:13:51.879 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/manager has finished in 102 ms
29-Sep-2016 12:13:51.879 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/ROOT
29-Sep-2016 12:13:51.915 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/ROOT has finished in 35 ms
29-Sep-2016 12:13:51.927 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/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 Deployment of web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/examples has finished in 414 ms
29-Sep-2016 12:13:52.341 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/docs
29-Sep-2016 12:13:52.371 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/docs has finished in 29 ms
29-Sep-2016 12:13:52.371 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/host-manager
29-Sep-2016 12:13:52.417 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /home/tomcat/apache-tomcat-8.5.5/webapps2/host-manager has finished in 46 ms
...

10. F'dan ix-xenarju, l-IP tas-server li użajt huwa 172.16.1.39 u tista' tara li stajt nibda żewġ servers tal-web f'kontenitur tomcat wieħed.

http://172.16.1.39:8080   [1st Web App]
http://172.16.1.39:7070   [2nd Web App]

Nittama li lkoll issibu dan l-artikolu utli u pjaċevoli. Żomm kuntatt ma 'TecMint u tħossok liberu li tikkuntattjani għal kwalunkwe mistoqsija dwar dan l-artikolu.