2018-6-27

16.4 配置Tomcat監聽80端口

16.5/16.6/16.7 配置Tomcat虛擬主機

16.8 Tomcat日誌




16.4 配置Tomcat監聽80端口

即變更監聽端口

vim /usr/local/tomcat/conf/server.xml

Connector port="8080" protocol="HTTP/1.1"修改爲Connector port="80" protocol="HTTP/1.1"

image.png

 /usr/local/tomcat/bin/shutdown.sh

 /usr/local/tomcat/bin/startup.sh

重啓tomcat

image.png


目前nginx已經佔用了80端口,所以不能同時佔用80端口,停掉nginx服務,重啓tomocat

image.png

這時候監聽80端口的就是java了



16.5/16.6/16.7 配置Tomcat虛擬主機

vim /usr/local/tomcat/conf/server.xml


其中<Host>和</Host>之間的配置爲虛擬主機配置部分,name定義域名,

appBase定義應用的目錄,Java的應用通常是一個war的壓縮包,你只需要將war的壓縮包放到appBase目錄下面即可。剛剛阿銘訪問的Tomcat默認頁其實就是在appBase目錄下面,不過是在它子目錄ROOT裏。

docBase,這個參數用來定義網站的文件存放路徑,如果不定義,默認是在appBase/ROOT下面,定義了docBase就以該目錄爲主了,其中appBase和docBase可以一樣。在這一步操作過程中很多同學遇到過訪問404的問題,其實就是docBase沒有定義對。

 appBase爲應用存放目錄,通常是需要把war包直接放到該目錄下面,它會自動解壓成一個程序目錄

 增加虛擬主機,編輯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>

image.png




下面我們通過部署一個java的應用來體會appBase和docBase目錄的作用

 下載zrlog wget http://dl.zrlog.com/release/zrlog-1.7.1-baaecb9-release.war

 mv zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/

image.png

自動解壓



 mv /usr/local/tomcat/webapps/zrlog-1.7.1-baaecb9-release /usr/local/tomcat/webapps/zrlog

 瀏覽器訪問 ip:8080/zrlog/install/

 mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/

image.png




16.8 Tomcat日誌

 ls /usr/local/tomcat/logs

image.png

 其中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日誌,錯誤日誌會統一記錄到catalina.out中。關於Tomcat日誌,你最需要關注catalina.out,當出現問題時,我們應該第一想到去查看它


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章