第十六章、Tomcat的搭建與配置

16.1 Tomcat介紹
16.2 安裝jdk
16.3 安裝Tomcat
16.4 配置Tomcat監聽80端口
16.5/16.6/16.7 配置Tomcat虛擬主機
16.8 Tomcat日誌
16.9 擴展
 
 
16.1 Tomcat介紹
 
 
16.2 安裝jdk
#安裝Tomcat前要先安裝jdk
jdk版本1.6,1.7,1.8
1、下載包,並經過xftp放到/usr/local/src/目錄
下載jdk8,經過xftp將下載包放到/usr/local/src/目錄下
 
2、解壓包並更名將包移動到/usr/local目錄下
tar zxvf jdk-8u181-linux-x64.tar.gz
mv jdk1.8.0_181 /usr/local/jdk1.8
 
3、設置環境變量,編輯/etc/profile文件
vi /etc/profile  
#最後面增長
JAVA_HOME=/usr/local/jdk1.8/
JAVA_BIN=/usr/local/jdk1.8/bin
JRE_HOME=/usr/local/jdk1.8/jre
PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar
 
4、使修改的配置文件當即生效
source /etc/profile
 
5、檢測jdk是否安裝成功 (命令是否能夠運行,且顯示的版本號是否對的上)
java -version
#若是版本號對不上有多是系統以前已經安裝過其餘版本的jdk
[root@xinlinux-03 src]# java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
 
 
16.3 安裝Tomcat
二進制免編譯安裝
1、下載tomcat包
cd /usr/local/src
wget https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.34/bin/apache-tomcat-8.5.34.tar.gz
 
2、解壓包並更名移動到/usr/local目錄
tar zxvf apache-tomcat-8.5.34.tar.gz
mv apache-tomcat-8.5.34 /usr/local/tomcat
 
3、啓動Tomcat
/usr/local/tomcat/bin/startup.sh
[root@xinlinux-03 src]# /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/jdk1.8
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Tomcat started.
 
4、檢測tomcat是否成功啓動
ps aux|grep tomcat
 
#tomcat服務不支持重啓,修改配置文件後要生效必須先stop再start
 
關閉tomcat服務
/usr/local/tomcat/bin/shutdown.sh
 
查看tomcat監聽端口
netstat -lntp |grep java
#tomcat監聽三個端口: 8080爲提供web服務的端口8005爲管理端口8009端口爲第三方服務調用的端口,好比httpd和Tomcat結合時會用到
 [root@xinlinux-03 src]# netstat -lntp |grep java
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN  1257/java
tcp6       0      0 :::8009                 :::*                    LISTEN  1257/java
tcp6       0      0 :::8080                 :::*                    LISTEN  1257/java
 
#剛開啓tomcat時,8005端口會比較慢啓動,因此剛開始訪問網站的時候加載很慢
 
 
16.4 配置Tomcat監聽80端口
修改tomcat配置文件
vim /usr/local/tomcat/conf/server.xml
#Connector port="8080" protocol="HTTP/1.1"修改成 Connector port="80" protocol="HTTP/1.1"
 
使修改的配置生效,先停掉tomcat,而後開啓
/usr/local/tomcat/bin/shutdown.sh
/usr/local/tomcat/bin/startup.sh
 
[root@xinlinux-03 src]# netstat -lntp |grep java
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN  1482/java
tcp6       0      0 :::8009                 :::*                    LISTEN  1482/java
tcp6       0      0 :::80                   :::*                    LISTEN  1482/java
 
 
16.5/16.6/16.7 配置Tomcat虛擬主機
修改tomcat配置文件
vim /usr/local/tomcat/conf/server.xml
其中<Host>和</Host>之間的配置爲 虛擬主機配置部分,name定義域名,appBase定義應用的目錄,unpackWARs是否將appBase目錄下的war包自動解壓
 
#Java的應用一般是一個war的壓縮包,你只須要將war的壓縮包放到appBase目錄下面便可。剛剛阿銘訪問的Tomcat默認頁其實就是在appBase目錄下面,不過是在它子目錄ROOT裏。
 
 
增長虛擬主機,編輯server.xml,在</Host>下面增長以下內容
<Host name="www.123.cn" appBase=""
    unpackWARs= "true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">
    <Context path="" docBase="/data/wwwroot/123.cn/" debug="0" reloadable="true" crossContext="true"/>
</Host>
 
mkdir /data/wwwroot/123.cn/    #自定義了docBase的路徑,須要手動建立
 
#docBase,這個參數用來定義網站的文件存放路徑, 若是不定義,默認是在appBase/ROOT下面,定義了docBase就以該目錄爲主了,其中appBase和docBase能夠同樣。
#遇到過訪問404的問題,實際上是docBase沒有定義對。
 
appBase爲應用存放目錄,一般是須要把war包直接放到該目錄下面,它會自動解壓成一個程序目錄
 
docBase與appBase區別:
appBase是放war包的目錄;而docBase是放網站程序的文件的
 
 
經過部署一個java的應用測試appBase和docBase目錄的做用
1、下載java應用war包
 
2、將war包拷貝到/usr/local/tomcat/webapps目錄下,會發現war包自動解壓
 cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/
 
#對於war包解壓的目錄,若是刪除war包,目錄也會被刪除
 
3、將war包解壓的目錄更名,會發現war包會從新解壓一個與war包同名的目錄
cd  /usr/local/tomcat/webapps
mv zrlog-1.7.1-baaecb9-release   zrlog
 

 

4、安裝java應用,使用瀏覽器訪問出現博客安裝嚮導,先在mysql建立庫,用戶等,而後再瀏覽器填寫信息
# 瀏覽器訪問192.168.233.150/zrlog/

 

 
在mysql建立zrlog庫,建立用戶
/etc/init.d/mysqld start
mysql -uroot -p123456
create database zrlog;
grant  all on zrlog.* to 'zrlog'@127.0.0.1 identified  by  '123456' ;
 
 
5、讓博客用域名去訪問,不用加後面的目錄名
一、將zrlog目錄移到以前修改配置文件添加虛擬主機的docBase定義的目錄(沒有設置appBase)
mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/
 
二、在主機上進行測試,先在windows的hosts文件添加
192.168.233.150    www.123.cn
 
三、瀏覽輸入 www.123.cn

 

 
16.8 Tomcat日誌
#主要關注catalina.out,錯誤日誌會統一記錄到catalina.out中。
tomcat存放日誌目錄
ls /usr/local/tomcat/logs
[root@xinlinux-03 webapps]# ls /usr/local/tomcat/logs
catalina.2018-10-11.log      localhost.2018-10-11.log
catalina.out                 localhost_access_log.2018-10-11.txt
host-manager.2018-10-11.log  manager.2018-10-11.log
 
# catalina開頭的日誌爲Tomcat的綜合日誌,它記錄Tomcat服務相關信息,也會記錄錯誤日誌。
其中catalina.2017-xx-xx.log和catalina.out內容相同,前者會天天生成一個新的日誌。
 
# host-manager和manager爲管理相關的日誌,其中host-manager爲虛擬主機的管理日誌。
 
# localhost和localhost_access爲虛擬主機相關日誌,其中帶access字樣的日誌爲訪問日誌,不帶access字樣的爲默認虛擬主機的錯誤日誌。
 
#訪問日誌默認不會生成,須要在server.xml中配置一下。
具體方法是在對應虛擬主機的<Host></Host>裏面加入下面的配置(假如域名爲123.cn):
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
         prefix="123.cn_access" suffix=".log"
         pattern="%h %l %u %t &quot;%r&quot; %s %b" />
#prefix定義訪問日誌的前綴,suffix定義日誌的後綴,pattern定義日誌格式。新增長的虛擬主機默認並不會生成相似默認虛擬主機的那個localhost.日期.log日誌
 
 
16.9 擴展
 
 
 
j2ee、j2se、ejb、javabean、serverlet、jsp之間關係 http://bbs.csdn.net/topics/50015576
 
 
tomcat經常使用數據庫鏈接的方法 http://wjw7702.blog.51cto.com/5210820/1109263
 
 
 
 
1 tomcat  單機多實例
 
2 tomcat的jvm設置和鏈接數設置
 
3 jmx監控tomcat
 
4 jvm性能調優監控工具jps/jstack/jmap/jhat/jstat
 
 
5 gvm gc 相關
 
 
tomcat內存溢出
相關文章
相關標籤/搜索