溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

深入淺析Centos 7系統(tǒng)的Tomcat服務(wù)器

發(fā)布時間:2020-09-07 20:07:01 來源:腳本之家 閱讀:134 作者:俊偉祺i 欄目:服務(wù)器

一、tomcat的由來

名稱由來:tomcat最初是由Sun的軟件架構(gòu)師詹姆斯 鄧肯 戴維森開發(fā)的。后來他幫助將其變?yōu)殚_源項目,并由Sun貢獻(xiàn)給Apache軟件基金會。由于大部分開源項目O'Reilly都會出一本相關(guān)的書,并且將其封面設(shè)計成某個動物的素描,因此他希望將此項目以一個動物的名字命名。因為他希望這種動物能夠自己照顧自己,最終,他將其命名為tomcat(公貓)。

1、Tomcat應(yīng)用場景

Tomcat服務(wù)器是一個免費的開源web應(yīng)用服務(wù)器,屬于輕量級應(yīng)用服務(wù)器,在中小型系統(tǒng)和并發(fā)用戶不是很多的場合中被普遍使用,是開發(fā)和測試JSP程序的首選。一般來說,Tomcat雖然和apache或者Nginx這些web服務(wù)器一樣,具有處理HTML頁面的功能,然而由于其處理靜態(tài)頁面的能力遠(yuǎn)不如apache或者Nginx,所以Tomcat一般是作為一個servlet和JSP容器,單獨運行在后端。

2、Tomcat所需的依賴軟件

在安裝Tomcat之前必須安裝JDK,JDK是sun公司免費提供的Java語言的軟件開發(fā)工具包,其中包含Java虛擬機(jī)(JVM)。編寫好的Java源程序經(jīng)過編譯可形成Java字節(jié)碼,只要安裝了JDK就可以利用JVM解釋這些字碼文件,從而保證Java的跨平臺性。

在平臺兼容性方面,JDK作為解釋字節(jié)碼文件并據(jù)此調(diào)用操作系統(tǒng)的API實現(xiàn)對應(yīng)功能的Java虛擬機(jī),與操作系統(tǒng)類型和平臺位數(shù)密切相關(guān),因此存在不同類型的版本,而Tomcat也具有這些特征,(Centos 7.0默認(rèn)情況下JDK已經(jīng)安裝,如果要是Centos 6.0操作系統(tǒng)就需要自行安裝了)。

1)查看JDK是否安裝

[root@centos02 ~]# java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

2)Centos 6.0安裝JDK

[root@centos02 ~]# mount /dev/cdrom /mnt/ <!--掛載Linux光盤-->
mount: /dev/sr0 寫保護(hù),將以只讀方式掛載
[root@centos02 ~]# tar zxvf /mnt/jdk-7u65-linux-x64.gz -C /usr/src/ 
  <!--解壓縮jdk軟件包-->
[root@centos02 src]# ls
debug jdk1.7.0_65 kernels
[root@centos02 src]# mv jdk1.7.0_65/ /usr/src/java <!--安裝JDK-->
[root@centos02 ~]# vim /etc/profile.d/java.sh<!--配置jdk運行環(huán)境變量-->
export JAVA_HOME=/usr/local/java
export PATH=$PATH:$JAVA_HOME/bin
[root@centos02 ~]# chmod +x /etc/profile.d/java.sh<!--變量添加執(zhí)行權(quán)限-->
[root@centos02 ~]# source /etc/profile.d/java.sh <!--運行JDK-->

二、Tomcat的配置相關(guān)說明

1、Tomcat的主要目錄

tomcat的主要目錄為/usr/local/tomcat8/。

[root@centos02 ~]# cd /usr/local/tomcat/
[root@centos02 tomcat]# ll
總用量 96
drwxr-xr-x 2 root root 4096 11月 30 19:48 bin
drwxr-xr-x 3 root root 174 11月 30 20:03 conf
drwxr-xr-x 2 root root 4096 11月 30 19:48 lib
-rw-r--r-- 1 root root 56812 5月 20 2014 LICENSE
drwxr-xr-x 2 root root 197 11月 30 19:51 logs
-rw-r--r-- 1 root root 1192 5月 20 2014 NOTICE
-rw-r--r-- 1 root root 8974 5月 20 2014 RELEASE-NOTES
-rw-r--r-- 1 root root 16204 5月 20 2014 RUNNING.txt
drwxr-xr-x 2 root root 30 11月 30 19:48 temp
drwxr-xr-x 7 root root 81 5月 20 2014 webapps
drwxr-xr-x 3 root root 22 11月 30 19:51 work

主要目錄說明如下:

|---bin/:存放Windows或Linux平臺上啟動和關(guān)閉Tomcat的腳本文件;
|---conf/:存放Tomcat服務(wù)器的各種全局配置文件,其中最重要的是server.xml和web.xml;
|---lib/:存放Tomcat運行需要的庫文件;
|---logs/:存放Tomcat執(zhí)行時的LOG文件;
|---webapps:Tomcat的主要web發(fā)布目錄(包括應(yīng)用程序示例);
|---work:存放JSP編譯后產(chǎn)生的class文件;

2、配置文件說明

[root@centos02 tomcat]# ll conf/
總用量 200
drwxr-xr-x 3 root root 23 11月 30 19:51 Catalina
-rw------- 1 root root 12257 5月 20 2014 catalina.policy
-rw------- 1 root root 6294 5月 20 2014 catalina.properties
-rw------- 1 root root 1394 5月 20 2014 context.xml
-rw------- 1 root root 3288 5月 20 2014 logging.properties
-rw------- 1 root root 6610 11月 30 20:03 server.xml
-rw------- 1 root root 1530 5月 20 2014 tomcat-users.xml
-rw------- 1 root root 163385 5月 20 2014 web.xml

配置文件說明如下:

catalina.policy:權(quán)限控制配置文件;
catalina.properties:Tomcat屬性配置文件;
context.xml:上下文配置文件;
logging.properties:日志log相關(guān)配置文件;
server.xml:主配置文件;
tomcat-users.xml:manager-gui管理用戶配置文件(Tomcatt安裝后提供一個manager-gui的管理界面,通過配置該文件可以開啟訪問);
web.xml:Tomcat的servlet、servlet-mapping、filter、MIME等相關(guān)配置;

3、Tomcat主配置文件說明

server.xml為Tomcat的主要配置文件,通過配置該文件,可以修改Tomcat的啟動端口、網(wǎng)站目錄、虛擬主機(jī)、開啟https等重要功能。

整個server.xml由以下結(jié)構(gòu)構(gòu)成:<Server>、<Service>、<Connector /><Engine >、<Host>、<Context>、</Context></Host></Engine></Service>和</Server>。

以下是默認(rèn)安裝server.xml文件的部分內(nèi)容,其中<!-- -->內(nèi)的內(nèi)容時注釋信息。//號開頭是我自行進(jìn)行的批注:

[root@Centos01 tomcat8]# vim conf/server.xml
<?xml version="1.0" encoding="UTF-8"?>
............     //省略部分內(nèi)容
<Server port="8005" shutdown="SHUTDOWN">  
//Tomcat關(guān)閉端口,默認(rèn)只對本機(jī)地址開放,可以在本機(jī)通過Telnet 127.0.0.1 8005訪問,
//對Tomcat進(jìn)行關(guān)閉操作
............    //此處省略部分內(nèi)容
 <Connector port="8080" protocol="HTTP/1.1"
  connectionTimeout="20000"
  redirectPort="8443" />
//Tomcat啟動的默認(rèn)端口號8080,可以根據(jù)需要進(jìn)行更改。
............    //此處省略部分內(nèi)容
 <!-- Define an AJP 1.3 Connector on port 8009 -->
 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
//Tomcat啟動AJP 1.3連接器時默認(rèn)的端口號,可以根據(jù)需要進(jìn)行更改
............     //此處省略部分內(nèi)容
//以下為Tomcat定義虛擬主機(jī)時的配置及日志配置
<Host name="localhost" appBase="webapps"
  unpackWARs="true" autoDeploy="true">

 <!-- SingleSignOn valve, share authentication between web applications
  Documentation at: /docs/config/valve.html -->
 <!--
 <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
 -->

 <!-- Access log processes all example.
  Documentation at: /docs/config/valve.html
  Note: The pattern used is equivalent to using pattern="common" -->
 <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
  prefix="localhost_access_log" suffix=".txt"
  pattern="%h %l %u %t "%r" %s %b" />

 </Host>
 </Engine>
 </Service>
</Server>

4、Tomcat server的組成部分說明

1)Server

server元素代表了整個CatAlina的servlet容器。

2)Service

Service是這樣一個集合:它由一個或者多個Connector,以及一個Engine(負(fù)責(zé)處理所有Connector所獲得的客戶請求)組成。

3)Connector

一個Connector在某個指定端口上偵聽客戶請求,并將獲得的請求交給Engine來處理,從Engine處獲得回應(yīng)并返回客戶。

Tomcat有兩個典型的Connector,一個直接偵聽來自browser的http請求,一個偵聽來自其他webserver的請求。

Coyote HTTP/1.1 Connector在端口8080處偵聽來自客戶browser(瀏覽)的http請求。

Coyote JK2 Connector 在端口8009處偵聽來自其他文本server(Apache)的servlet/jsp代理請求。

4)Engine

Engine下可以配置多個虛擬主機(jī)virtual host,每個虛擬主機(jī)都有一個域名。
當(dāng)Engine獲得一個請求時,它把該請求匹配到某個Host上,然后把該請求交給該host來處理。
Engine有一個默認(rèn)虛擬主機(jī),當(dāng)請求無法匹配到任何一個host上時,將交給該默認(rèn)主機(jī)處理。

5)Host

Host代表一個virtual Host,即虛擬主機(jī),每個虛擬主機(jī)和某個網(wǎng)絡(luò)域名Domain Name相匹配。
每個虛擬主機(jī)下都可以部署一個或多個web app,每個web app對應(yīng)一個Context,有一個Context path。

當(dāng)host獲得一個請求時,將把該請求匹配到某個Context上,然后把該請求交給該Context來處理,匹配的方法是“最長匹配”,所以一個path==""的Context將成為該Host的默認(rèn)Context。
所有無法和其他Context的路徑名匹配的請求都將最終和該默認(rèn)Context匹配。

6)Context

一個Context對應(yīng)一個web application ,一個web application由一個或者多個servlet組成。

總結(jié)

以上所述是小編給大家介紹的Centos 7系統(tǒng)的Tomcat服務(wù)器,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI