Tomcat是一個輕量級應用服務器,在中小型系統和併發訪問用戶不是不少的場合下被廣泛使用,是開發和調試Java程序的首選。實際上,Tomcat部分是Apache服務器的擴展,但它是獨立運行的,因此當你運行Tomcat時,它是做爲一個獨立的進程運行的。java
jdk(Java Development Kit)是Sun公司針對Java開發的產品。自從Java推出以來,JDK已經成爲使用最普遍的Java SDK。JDK是整個Java的核心,它包括了Java運行環境、Java工具和Java基礎的類庫。因此要想運行Java程序必需要有JDK的支持,而安裝Tomcat的前提也是安裝好JDK。web
咱們先在windows下載JDK的軟件安裝包,而後傳到Linux的/usr/local/src目錄中並解壓:數據庫
而後更改下後綴:apache
#mv jdk1.8.0_191 /usr/local/jdk1.8vim
再設置環境變量:windows
#vim /etc/profile瀏覽器
把下面的內容寫入/etc/profile的最下面:tomcat
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
而後執行source /etc/profile命令使其生效。服務器
檢測設置是否正確:併發
#java -version
能夠看到,這是rpm的JDK,咱們做以下處理:
#mv /usr/bin/java /usr/bin/java_bak
#source /etc/profile
再執行命令java -version
若是顯示如下內容,則說明配置正確:
切換到/usr/local/src目錄中,並使用wget命令下載Tomcat軟件包
#cd /usr/local/src
#wget http://apache.fayea.com/tomcat/tomcat-8/v8.5.35/bin/apache-tomcat-8.5.35.tar.gz
#tar zxvf apache-tomcat-8.5.35.tar.gz
#mv apache-tomcat-8.5.35 /usr/local/tomcat
由於咱們下載的是二進制包,因此是免編譯的,啓動Tomcat的命令爲:/usr/local/tomcat/bin/startup.sh
關閉Tomcat的命令爲:/usr/local/tomcat/bin/shutdown.sh
若是想讓Tomcat服務開機啓動,須要把啓動命令寫入到/etc/rc.d/rc.local文件中並賦予x權限:
#echo "/usr/local/tomcat/bin/startup.sh" >> /etc/rc.d/rc.local
#chmod a+x /etc/rc.d/rc.local
再看下Tomcat監聽的服務端口:
能夠看到有三個端口:
8080爲提供web服務的端口;
8005爲管理端口;
8009爲第三方服務調用的端口,好比httpd和Tomcat結合時會用到。
打開瀏覽器,輸入192.168.6.120:8080能夠看到Tomcat的默認頁面:
Tomcat默認啓動的端口是8080,若是想修改成80,則須要修改server.xml文件。
#vim /usr/local/tomcat/conf/server.xml
保存文件後重啓Tomcat:
Tomcat的關閉和啓動有點特殊,須要使用它自帶的腳本實現。其實在生產環境中,Tomcat會使用8080端口,80端口是留給Nginx的。也就是說,要想訪問Tomcat,須要使用Nginx代理。
咱們先關閉Nginx服務,再重啓Tomcat服務,而後就能夠看到Tomcat監聽80端口了:
咱們打開Tomcat的配置文件,其中<Host>和</Host>之間的配置爲虛擬主機配置部分,name定義域名,appBase定義應用的目錄。Java的應用一般是一個jar的壓縮包,將jar的壓縮包放到appBase目錄下面便可。剛剛咱們訪問的Tomcat默認頁其實就是在appBase目錄下面,不過是在它子目錄ROOT裏。
咱們在後面再增長一段配置文件內容:
<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>
其中,多了一個docBase,這個參數用來定義網站的文件存放路徑,若是不定義,默認是在appBase/ROOT下面的。定義了docBase就以該目錄爲主了,其中appBase和docBase能夠同樣。在這一步操做過程當中,若是遇到訪問404的問題,其實就是docBase沒有定義對。
appBase爲應用存放目錄,一般是須要把war包直接放到該目錄下面,它會自動解壓成一個程序目錄。下面咱們經過部署一個java的應用來體會appBase和docBase目錄的做用:
下載zrlog軟件包,把它移動到/usr/local/tomcat/webapps/目錄下並更名爲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/
#mv /usr/local/tomcat/webapps/zrlog-1.7.1-baaecb9-release /usr/local/tomcat/webapps/zrlog
而後在windows瀏覽器上輸入網址http://192.168.6.120/zrlog/,出現Zrlog安裝嚮導:
而後在Linux中登入數據庫,建立一個zrlog庫和一個zrlog用戶:
create database zrlog;
grant all on zrlog.* to 'zrlog'@127.0.0.1 identified by '123456';
而後在瀏覽器中輸入以下信息:
點擊查看,就能夠看到主頁面了:
Tomcat的日誌目錄爲/usr/local/tomcat/logs,主要有四大類日誌:
其中catalina開頭的日誌爲Tomcat的綜合日誌,它記錄Tomcat服務相關信息,也會記錄錯誤日誌。catalina.2018-12-25.log和catalina.out內容相同,前者會天天生成一個新的日誌。host-manager和manager爲管理相關的日誌,其中host-manager爲虛擬主機的管理日誌。Localhost和localhost_access爲虛擬主機相關日誌,其中帶access字樣的日誌爲訪問日誌,不帶access字樣的爲默認虛擬主機的錯誤日誌。訪問日誌默認不會生成,須要在server.xml中配置一下。具體的方法是在對應虛擬主機的<Host></Host>裏面加入下面的配置:
prefix定義訪問日誌的前綴,suffix定義日誌的後綴,pattern定義日誌格式。新增長的虛擬主機默認並不會生成相似默認虛擬主機的那個「localhost.日期.log」日誌,錯誤日誌會統一記錄到catalina.out中。關於Tomcat日誌,最須要關注catalina.out,出現問題時應該首先想到去查看它。