Tomcat应用部署
一、Tomcat介紹
概述:Tomcat是由Apache軟件基金會下屬的Jakarta項目開發(fā)的一個Servlet容器,按照Sun Microsystems提供的技術(shù)規(guī)范,實現(xiàn)了對Servlet和JavaServer Page(JSP)的支持,并提供了作為Web服務(wù)器的一些特有功能,如Tomcat管理和控制平臺、安全域管理和Tomcat閥等。由于Tomcat本身也內(nèi)含了一個HTTP服務(wù)器,它也可以被視作一個單獨的Web服務(wù)器
Apache與Tomcat的比較
相同點:
1、兩者都是Apache組織開發(fā)的
2、兩者都有HTTP服務(wù)的功能
3、兩者都是免費的
不同點:
1、Apache是專門用了提供HTTP服務(wù)的,以及相關(guān)配置的(例如虛擬主機、URL轉(zhuǎn)發(fā)等等),而Tomcat是Apache組織在符合Java EE的JSP、Servlet標(biāo)準下開發(fā)的一個JSP服務(wù)器.
2、Apache是一個Web服務(wù)器環(huán)境程序,啟用他可以作為Web服務(wù)器使用,不過只支持靜態(tài)網(wǎng)頁。如果要在Apache環(huán)境下運行JSP的話就需要一個解釋器來執(zhí)行JSP網(wǎng)頁,而這個JSP解釋器就是Tomcat
3、Apache側(cè)重于HTTPServer?,Tomcat側(cè)重于Servlet引擎,如果以Standalone方式運行,功能上與Apache等效,支持JSP,但對靜態(tài)網(wǎng)頁不太理想
4、Apache是Web服務(wù)器,Tomcat是應(yīng)用(Java)服務(wù)器,它只是一個Servlet(JSP也翻譯成Servlet)容器,可以認為是Apache的擴展,但是可以獨立于Apache運行
Tomcat同類產(chǎn)品:
1、Resin 服務(wù)器
Resin是Caucho公司的產(chǎn)品,是一個非常流行的支持Servlet和JSP的服務(wù)器,速度非常快。Resin本身包含了一個支持HTML的Web服務(wù)器,這使它不僅可以顯示動態(tài)內(nèi)容,而且顯示靜態(tài)內(nèi)容的能力也毫不遜色,因此許多網(wǎng)站都是使用Resin服務(wù)器構(gòu)建
2、Jetty 服務(wù)器
Jetty是一個純粹的基于Java的網(wǎng)頁服務(wù)器和Java Servlet容器。盡管網(wǎng)頁服務(wù)器通常用來為人們呈現(xiàn)文檔,但是Jetty通常在較大的軟件框架中用于計算機與計算機之間的通信。Jetty作為Eclipse基金會的一部分,是一個自由和開源項目
3、JBoss服務(wù)器
JBoss是一個種遵從JavaEE規(guī)范的、開放源代碼的、純Java的EJB服務(wù)器,對于J2EE有很好的支持。JBoss采用JML API實現(xiàn)軟件模塊的集成與管理,其核心服務(wù)又是提供EJB服務(wù)器,不包含Servlet和JSP的Web容器,不過它可以和Tomcat完美結(jié)合
4、WebSphere 服務(wù)器
WebSphere是IBM公司的產(chǎn)品,可進一步細分為 WebSphere Performance Pack、Cache Manager 和WebSphere Application Server等系列,其中WebSphere Application Server 是基于Java 的應(yīng)用環(huán)境,可以運行于 Sun Solaris、Windows NT 等多種操作系統(tǒng)平臺,用于建立、部署和管理Internet和Intranet Web應(yīng)用程序
5、WebLogic 服務(wù)器
WebLogic 是ORACLE公司的產(chǎn)品,可進一步細分為 WebLogic Server、WebLogic Enterprise 和 WebLogic Portal 等系列,其中 WebLogic Server 的功能特別強大。WebLogic 支持企業(yè)級的、多層次的和完全分布式的Web應(yīng)用,并且服務(wù)器的配置簡單、界面友好。對于那些正在尋求能夠提供Java平臺所擁有的一切應(yīng)用服務(wù)器的用戶來說,WebLogic是一個十分理想的選擇
二、Tomcat與jdk
JDK是開發(fā)人員開發(fā)使用,jre是用來運行java程序,就是java程序的運行環(huán)境,jvm是整個java實現(xiàn)跨平臺的最核心的部分,所有的java程序會首先被編譯為class的類文件,這種類文件可以在虛擬機上執(zhí)行
JDK中包含JRE,在JDK的安裝目錄下有一個名為jre的目錄,里面有兩個文件夾bin和lib,在這里可以認為bin里的就是jvm,lib中則是jvm工作所需要的類庫,而jvm和 lib和起來就稱為jre。jdk是java語言編寫的,用來給java程序調(diào)用的,jvm因為與平臺進行交互,是用c/c++和匯編語言編寫的;
jdk是java運行和編譯的,tomcat是web項目的運行容器,java沒有jdk沒辦法編譯運行,java運行必須依賴jdk的環(huán)境,所以安裝tomcat前必須要安裝jdk環(huán)境
下載位置
Tomcat下載地址:Apache Tomcat? - Apache Tomcat 9 Software Downloads
jdk下載地址:Java 歸檔文件下載 - Java SE 8 (oracle.com)
解釋:
Java SE(Java Platform,Standard Edition):Java SE 是做電腦上運行的軟件
Java EE(Java Platform,Enterprise Edition):Java EE 是用來做網(wǎng)站的(我們常見的JSP技術(shù))
Java ME(Java Platform,Micro Edition):Java ME 是做手機軟件的
對應(yīng)關(guān)系:
?三、Tomcat內(nèi)部工作原理及模型協(xié)議
?tomcat整體架構(gòu):
組件關(guān)聯(lián):
1、Tomcat 的心臟是兩個組件:Connector 和 Container,Connector 組件是可以被替換,這樣顯得更加靈活,一個 Container 可以選擇對應(yīng)多個 Connector。多個 Connector 和一個 Container 就形成了一個 Service,有了 Service 就可以對外提供服務(wù)了,但是 Service 還要一個生存的環(huán)境,必須要有人能夠給她生命、掌握其生死大權(quán),那就非 Server 莫屬了。所以整個 Tomcat 的生命周期由 Server 控制
2、我們將 Tomcat 中 Connector、Container 作為一個整體比作一對情侶的話,Connector 主要負責(zé)對外交流,可以比作為 Boy,Container 主要處理 Connector 接受的請求,主要是處理內(nèi)部事務(wù),可以比作為 Girl。那么這個 Service 就是連接這對男女的結(jié)婚證了。是Service 將它們連接在一起,共同組成一個家庭。當(dāng)然要組成一個家庭還要很多其它的元素說白了,Service 只是在 Connector 和 Container 外面多包一層,把它們組裝在一起,向外面提供服務(wù),一個 Service 可以設(shè)置多個 Connector,但是只能有一個 Container 容器
Engine:負責(zé)處理所有請求,處理后,將結(jié)果返回給service,而connector是作為service與engine的中間媒介出現(xiàn)的。?作為交流者;一個engine下可以配置一個默認主機,每個虛擬主機都有一個域名。當(dāng)engine獲得一個請求時,它把該請求匹配到虛擬主機host上,然后把請求交給該主機來處理。?Engine有一個默認主機,當(dāng)請求無法匹配到任何一個虛擬主機時,將交給默認host來處理。Engine以線程的方式啟動Host。
Host:代表一個虛擬主機,每個虛擬主機和某個網(wǎng)絡(luò)域名(Domain Name)相匹配。?每個虛擬主機下都可以部署一個或多個web應(yīng)用,每個web應(yīng)用對應(yīng)于一個context,有一個context path。?當(dāng)Host獲得一個請求時,將把該請求匹配到某個Context上;
Wrapper: 代表一個 Servlet,它負責(zé)管理一個 Servlet,包括的 Servlet 的裝載、初始化、執(zhí)行以及資源回收。Wrapper 是最底層的容器,它沒有子容器了
Tomcat Coyote支持的IO 模型與協(xié)議:
| 應(yīng)用層? | 應(yīng)用層協(xié)議? | 說明 |
| НТТP/1.1? | 這是大部分Web應(yīng)用采用的訪問協(xié)議 | |
| AJP? | 用于和WX集成(如Apache) ,以實現(xiàn)對靜態(tài)資源的優(yōu)化以及集群部署,當(dāng)前支持AJP/1.3 | |
| HТIP/2 | HTTP 2.0大幅度的提升了Web性能。下一代HTTP協(xié)議, 自8.5以及9.0版本之后支持? | |
| 傳輸層? | IO模型? | 說明 |
| NIO? | 非阻塞I/O,采用Java NIO類庫實現(xiàn)非阻塞I/O,采用Java NIO類庫實現(xiàn) | |
| NIO2?NIO2? | 異步I/O,采用JDK 7最新的NIO2類庫實現(xiàn) | |
| APR? | 采用Apache可移植運行庫實現(xiàn),是C/C++編寫的本地庫。如果選擇該方案,需要單獨安裝APR庫 |
應(yīng)用層默認協(xié)議:HTTP/1.1
傳輸層默認IO模型:NIO
四、 tomcat配置說明
Tomcat的目錄:
| 目錄 | 說明 |
| bin | 存放啟動和關(guān)閉tomcat腳本 |
| conf | 存放不同的配置文件(server.xml和web.xml) |
| doc | 存放Tomcat文檔 |
| lib/japser/common | 存放Tomcat運行需要的庫文件(JARS) |
| logs | 存放Tomcat執(zhí)行時的LOG文件 |
| src | 存放Tomcat的源代碼 |
| webapps | Tomcat的主要Web發(fā)布目錄(包括應(yīng)用程序示例) |
| work | 存放jsp編譯后產(chǎn)生的class文件 |
| conf目錄中配置文件說明 | |
| server.xml | Tomcat的主配置文件,包含Service, Connector, Engine, Realm, Valve, Hosts主組件的相關(guān)配置信息 |
| web.xml | 遵循Servlet規(guī)范標(biāo)準的配置文件,用于配置servlet,并為所有的Web應(yīng)用程序提供包括MIME映射等默認配置信息 |
| tomcat-user.xml | Realm認證時用到的相關(guān)角色、用戶和密碼等信息;Tomcat自帶的manager默認情況下會用到此文件;在Tomcat中添加/刪除用戶,為用戶 指定角色等將通過編輯此文件實現(xiàn) |
| catalina.policy | Java相關(guān)的安全策略配置文件,在系統(tǒng)資源級別上提供訪問控制的能力 |
| catalina.properties | Tomcat內(nèi)部package的定義及訪問相關(guān)控制,也包括對通過類裝載器裝載的內(nèi)容的控制;Tomcat在啟動時會事先讀取此文件的相關(guān)設(shè)置 |
| logging.properties | Tomcat6通過自己內(nèi)部實現(xiàn)的JAVA日志記錄器來記錄操作相關(guān)的日志,此文件即為日志記錄器相關(guān)的配置信息,可以用來定義日志記錄的組 件級別以及日志文件的存在位置等 |
| context.xml | 所有host的默認配置信息 |
tomcat請求過程:
tomcat server處理一個HTT請求的過程
?
?tomcat中支持兩種協(xié)議的連接器:HTTP/1.1與AJP/1.3
HTTP/1.1協(xié)議負責(zé)建立HTTP連接,web應(yīng)用通過瀏覽器訪問tomcat服務(wù)器用的就是這個連接器,默認監(jiān)聽的是8080端口
AJP/1.3協(xié)議負責(zé)和其他HTTP服務(wù)器建立連接,監(jiān)聽的是8009端口,比如tomcat和apache或者iis集成時需要用到這個連接器
五、構(gòu)建Tomcat
| 系統(tǒng) | 機器名稱 | ip | 服務(wù) |
| CentOS Linux release 7.4.1708 | c7--10 | 192.168.2.10/24 | Tomcat |
?先上傳安裝包??apache-tomcat-10.0.13.tar.gz ?jdk-8u91-linux-x64.tar.gz
[root@C7-10 ~]# ls apache-tomcat-10.0.13.tar.gz jdk-8u91-linux-x64.tar.gz(一)、安裝jdk,部署java環(huán)境?
[root@C7-10 ~]# tar zxvf jdk-8u91-linux-x64.tar.gz .......... ..... .. jdk1.8.0_91/jre/README jdk1.8.0_91/README.html[root@C7-10 ~]# mv jdk1.8.0_91/ /usr/local/java [root@C7-10 ~]# ls /usr/local/java/ bin db javafx-src.zip lib man release THIRDPARTYLICENSEREADME-JAVAFX.txt COPYRIGHT include jre LICENSE README.html src.zip THIRDPARTYLICENSEREADME.txt----下面直接復(fù)制粘貼cat <<END>>/etc/profile export JAVA_HOME=/usr/local/java export PATH=\$PATH:/usr/local/java/bin END----[root@C7-10 ~]# source /etc/profile [root@C7-10 ~]# java -version #查看java版本 java version "1.8.0_91" Java(TM) SE Runtime Environment (build 1.8.0_91-b14) Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)(二)、安裝Tomcat軟件程序
?這里安裝的是tomcat 10.0.13版本
注意: 如要做下面的項目二盡量安裝版本低一點的
[root@C7-10 ~]# tar zxvf apache-tomcat-10.0.13.tar.gz ................ .......... .... apache-tomcat-10.0.13/bin/startup.sh apache-tomcat-10.0.13/bin/tool-wrapper.sh apache-tomcat-10.0.13/bin/version.sh[root@C7-10 ~]# mv apache-tomcat-10.0.13 /usr/local/tomcat[root@C7-10 ~]# ls /usr/local/tomcat/ bin conf lib logs README.md RUNNING.txt webapps BUILDING.txt CONTRIBUTING.md LICENSE NOTICE RELEASE-NOTES temp work[root@C7-10 ~]# /usr/local/tomcat/bin/startup.sh #啟動apache-tomcat服務(wù) Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/java Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started. [root@C7-10 ~]# netstat -auptn|grep 8080 tcp6 0 0 :::8080 :::* LISTEN 14366/java訪問頁面測試
?安裝mariadb數(shù)據(jù)庫,提供數(shù)據(jù)庫服務(wù)
方法一:本地yum也安裝
[root@C7-10 ~]# yum install mariadb-server mariadb ................... .......... .....[root@C7-10 ~]# systemctl start mariadb [root@C7-10 ~]# mysqladmin -uroot password 123 [root@C7-10 ~]# mysql -uroot -p123 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 2 Server version: 5.5.68-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec)MariaDB [(none)]> quit Bye方法二:可以使用網(wǎng)絡(luò)yum進行安裝
[root@C7-10 ~]# ping www.biadu.com #查看是否可以ping通外網(wǎng) PING www.biadu.com (47.254.33.193) 56(84) bytes of data. 64 bytes from 47.254.33.193 (47.254.33.193): icmp_seq=1 ttl=50 time=185 ms [root@C7-10 ~]# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm [root@C7-10 ~]# yum install mariadb-server mariadb #安裝 已加載插件:fastestmirror Loading mirror speeds from cached hostfile* base: mirrors.aliyun.com* extras: mirrors.aliyun.com* updates: mirrors.aliyun.com mariadb數(shù)據(jù)庫的相關(guān)命令是:systemctl start mariadb #啟動MariaDBsystemctl stop mariadb #停止MariaDBsystemctl restart mariadb #重啟MariaDBsystemctl enable mariadb #設(shè)置開機啟動 [root@C7-10 ~]# systemctl start mariadb [root@C7-10 ~]# mysqladmin -uroot password 123 [root@C7-10 ~]# mysql -uroot -p123 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 4 Server version: 5.5.68-MariaDB MariaDB ServerCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec)MariaDB [(none)]> quit Bye項目一:配置tomcat的manager管理界面
[root@C7-10 ~]# vim /usr/local/tomcat/conf/tomcat-users.xml.............. ......... .. --> <role rolename="manager-gui"/> #添加定義的角色 <user username="tomcat" password="123" roles="manager-gui"/> #賬戶名:tomcat 密碼:123 </tomcat-users> #默認在最后有保存[root@C7-10 ~]# vim /usr/local/tomcat/webapps/manager/META-INF/context.xml ............ .......21 <Valve className="org.apache.catalina.valves.RemoteAddrValve"22 allow="^.*$" /> #修改 解釋:允許其他所有主機訪問 ... .注意:allow默認是:127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1[root@C7-10 ~]# /usr/local/tomcat/bin/shutdown.sh #關(guān)閉 Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/java Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: [root@C7-10 ~]# /usr/local/tomcat/bin/startup.sh #啟動 Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr/local/java Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Tomcat started.進行測試:客戶端訪問manager管理界面(客戶端啟用停止項目、測試服務(wù)端狀態(tài)查看)
?輸入之前設(shè)置的? ?用戶名?:tomcat?? ?密碼:123
?顯示出:Tomcat Web 應(yīng)用程序管理者就說明項目一實驗成功了
?如果:提示我們403 拒絕訪問
?解決方案:添加manage.xml文件
[root@C7-10 ~]# vim /usr/local/tomcat/conf/Catalina/localhost/manager.xml<Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/manager"><Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" /> </Context>保存 添加以上內(nèi)容[root@C7-10 ~]# /usr/local/tomcat/bin/startup.sh ...... ... [root@C7-10 ~]# /usr/local/tomcat/bin/shutdown.sh .... ..在進行訪問測試注意:如果出現(xiàn)401 說明你用戶密碼輸入錯誤只要輸入正確就可以了
?項目二:城市訂單管理系統(tǒng),手動上線(創(chuàng)建項目中的數(shù)據(jù)庫或者導(dǎo)入數(shù)據(jù)庫文件),并進行授權(quán)
注意:此次使用??apache-tomcat-8.5.16.tar.gz? ?版本
上傳文件smbms_db.sql
[root@C7-10 ~]# ls smbms_db.sql[root@C7-10 ~]# mysql -uroot -p123<smbms_db.sql #導(dǎo)入數(shù)據(jù)庫中[root@C7-10 ~]# mysql -uroot -p123 ....... .... ... MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | smbms | | test | +--------------------+ 5 rows in set (0.00 sec)MariaDB [(none)]> grant all on smbms.* to 'aaa'@'192.168.2.10' identified by "123"; #給項目數(shù)據(jù)庫授權(quán) Query OK, 0 rows affected (0.01 sec) MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.00 sec)MariaDB [(none)]> use smbms; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -ADatabase changed MariaDB [smbms]> show tables; +-----------------+ | Tables_in_smbms | +-----------------+ | smbms_address | | smbms_bill | | smbms_provider | | smbms_role | | smbms_user | +-----------------+ 5 rows in set (0.00 sec)MariaDB [smbms]> select * from smbms_user; #查看項目中的管理員賬戶 +----+-----------+-----------------+--------------+--------+------------+-------------+----------------------------------------------------+----------+-----------+---------------------+----------+---------------------+ | id | userCode | userName | userPassword | gender | birthday | phone | address | userRole | createdBy | creationDate | modifyBy | modifyDate | +----+-----------+-----------------+--------------+--------+------------+-------------+----------------------------------------------------+----------+-----------+---------------------+----------+---------------------+ | 1 | admin | 系統(tǒng)管理員 | 1234567 | 1 | 1983-10-10 | 13688889999 | 北京市海淀區(qū)成府路207號 | 1 | 1 | 2013-03-21 16:52:07 | NULL | NULL | | 2 | liming | 李明 | 0000000 | 2 | 1983-12-10 | 13688884457 | 北京市東城區(qū)前門東大街9號 | 2 | 1 | 2014-12-31 19:52:09 | NULL | NULL | ................. ...........MariaDB [smbms]> exit Bye城市訂單管理系統(tǒng)項目上線
[root@C7-10 ~]# cd /usr/local/tomcat/webapps/ [root@C7-10 webapps]# mkdir /root/webapps.bak [root@C7-10 webapps]# mv * /root/webapps.bak/ [root@C7-10 webapps]# ls #上傳 WebRoot 文件 WebRoot[root@C7-10 webapps]# vim /usr/local/tomcat/webapps/WebRoot/WEB-INF/classes/database.propertiesdriver=com.mysql.jdbc.Driver #在和mysql傳遞數(shù)據(jù)的過程中,使用unicode編碼格式,并且字符集設(shè)置為utf-8 url=jdbc:mysql://192.168.2.10:3306/smbms?useUnicode=true&characterEncoding=utf-8 #修改地址為自己的192.168.2.10 user=aaa #設(shè)置為之前在數(shù)據(jù)庫授權(quán)的用戶名 aaa password=123 #設(shè)置為之前在數(shù)據(jù)庫授權(quán)的密碼 123保存退出[root@C7-10 webapps]# /usr/local/tomcat/bin/shutdown.sh ..... [root@C7-10 webapps]# /usr/local/tomcat/bin/startup.sh .....?測試客戶端訪問項目二:http://192.168.2.10:8080/WebRoot
登錄后如若訪問不了,可以嘗試重啟tomcat
?注意:如果出現(xiàn)用戶名密碼錯誤說明連接不上數(shù)據(jù)庫需要查看數(shù)據(jù)庫是否給用戶aaa授權(quán)
部署tomcat的虛擬主機
?準備網(wǎng)頁
[root@C7-10 ~]# cd /usr/local/tomcat/webapps/ [root@C7-10 webapps]# mkdir benet biii[root@C7-10 webapps]# vim benet/index.jsp <%@ page language="java" contentType="text/html;charset=utf-8"pageEncoding="utf-8"%> <h1>192.168.2.10 www.benet.com 今天特別冷</h1>保存[root@C7-10 webapps]# vim biii/index.jsp <%@ page language="java" contentType="text/html;charset=utf-8"pageEncoding="utf-8"%> <h1>www.biii.com 今天我沒有看電視</h1>保存修改server.xml文件
[root@C7-10 webapps]# vim /usr/local/tomcat/conf/server.xml ........ ....</Host><Host name="www.benet.com" appBase="webapps" unpackWARs="true" autoDeploy="true" ><Context docBase="/usr/local/tomcat/webapps/benet" path="" reloadable="true"/></Host><Host name="www.biii.com" appBase="webapps" unpackWARs="true" autoDeploy="true" ><Context docBase="/usr/local/tomcat/webapps/biii" path="" reloadable="true"/></Host></Engine>........ ....保存注意:在文件最后添加內(nèi)容的</Engine>上面添加
---##########---- HOST容器 介紹---#####<Host name="www.benet.com" appBase="webapps" unpackWARs="true" autoDeploy="true" > name="www.benet.com" :虛擬主機的名稱,Tomcat 通過在請求 URL 中的域名與 name 中的值匹配,用于查找能夠處理該請求的虛擬主機。如果未找到則交給在 Engine 中 defaultHost 指定的主機處理 appBase="webapps" :此 Host 的 webapps目錄,即指定存放 web 應(yīng)用程序的目錄的路徑,默認指向 ROOT 目錄下的 index.jsp unpackWARs="true" :在啟用此 webapps 時是否對 WAR 格式的歸檔文件先進行展開;默認為 true autoDeploy="true" :在 Tomcat 處于運行狀態(tài)時放置于 appBase 目錄中的應(yīng)用程序文件是否自動進行 部署,默認為 true ;開啟自動部署---#####<Context docBase="/usr/local/tomcat/webapps/benet" path="" reloadable="true"/> docBase="/usr/local/tomcat/webapps/benet" :設(shè)置項目存放路徑 path="" :tomcat把web應(yīng)用程序映射為root URI路徑(相對路徑) reloadable="true" :在Tomcat運行時,如果WEB-INF/classes和WEB-INF/lib目錄中有改變,Tomcat會自動重新加載該WEB應(yīng)用,但是開啟會加重服務(wù)器的負載(建議設(shè)置為false關(guān)閉),默認值為false,我們在調(diào)用可以打開,發(fā)布后再關(guān)閉;如果要更新可以更新完重啟tomcat服務(wù) [root@C7-10 webapps]# /usr/local/tomcat/bin/shutdown.sh[root@C7-10 webapps]# /usr/local/tomcat/bin/startup.sh?中本機中修改hosts文件 192.168.2.10 www.benet.com www.biii.com
?c7--10上修改hosts文件
[root@C7-10 webapps]# vim /etc/hosts192.168.2.10 www.benet.com www.biii.com測試訪問:www.benet.com? www.biii.com
如果出現(xiàn)亂碼解決方法
(1)HTML頁面中:
<head> ......<meta http-equiv=Content-Type content="text/html;charset=utf-8"> ...... </head>(2)JSP頁面中:
<%@ page language="java" contentType="text/html;charset=utf-8"pageEncoding="utf-8"%>總結(jié)
以上是生活随笔為你收集整理的Tomcat应用部署的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 鸭子的故事
- 下一篇: 推杆如妻子,发球木如情人,短铁如父母,球