1. 程式人生 > >Tomcat 部署Web應用 的三種方式

Tomcat 部署Web應用 的三種方式

操作前,先來了解一下Tomcat的目錄結構。(適用於Tomcat 6.0,Tomcat7.0,Tomcat8.0)
Tomcat下有7個目錄
分別是bin,conf,lib,logs,temp,webapps,work 目錄,現在對每一目錄做介紹。
Tomcat根目錄在tomcat中叫CATALINA_HOME
1. CATALINA_HOME/bin: 存放各種平臺下啟動和關閉Tomcat的指令碼檔案。
2. CATALINA_HOME/lib: 在lib目錄下的lib目錄,存放Tomcat伺服器和所有web應用都能訪問的JAR。
3. CATALINA_HOME/work: Tomcat把各種由jsp生成的servlet檔案放在這個目錄下。
4. CATALINA_HOME/temp: 臨時活頁夾,Tomcat執行時候存放臨時檔案用的。
5. CATALINA_HOME/logs: 存放Tomcat的日誌檔案。
6. CATALINA_HOME/conf: Tomcat的各種配置檔案,最重要的是server.xml。
7. CATALINA_HOME/webapps: Tomcat的主要Web釋出目錄,預設情況下把Web應用檔案放於此目錄。

war包部署:

將需要釋出的web應用打成war檔案,(例如:ROOT.war) 拷貝到CATALINA_HOME/webapps下,
啟動Tomcat,
如果是ROOT.war,直接通過http://ip:port/即可訪問
如果是xxxx.war,可通過http://ip:port/xxxx/訪問

目錄部署:

通過在server.xml中新建Context,部署一個JSP應用程式。
開啟CATALINA_HOME/conf/server.xml檔案,在Host標籤內建一個Context,內容如下。:

<Context path="/xxxx" reloadable="true"
docBase="D:\myapp" workDir="D:\myapp\work"/>

其中path是虛擬路徑,docBase是JSP應用程式的物理路徑,workDir是這個應用的工作目錄,存放執行是生成的於這個應用相關的檔案。
啟動Tomcat,可通過http://ip:port/xxxx/訪問

重定向web應用程式的目錄:

如果想在伺服器上執行一個以上的Tomcat例項,公用一個Tomcat發行版檔案,
或者想在升級Tomcat時,覆蓋原來的配置檔案,而不影響現有的web應用程式,
那麼“重定向web應用程式的目錄”方式部署是一個不錯的選擇。

假如Tomcat發行版安裝路徑是:/opt/Tomcat/,
Web應用名為aubapp,
在/srv/下建立目錄aubapp
在/srv/aubapp/下建立目錄webapps,work,temp,conf
將/opt/Tomcat/conf/下的所有內容,拷貝到/srv/aubapp/conf/下,

採用方案1,將war包拷貝到/srv/aubapp/webapps/下,
或者方案2,修改/srv/aubapp/conf/server.xml檔案制定應用路徑

編寫啟動指令碼start.sh,我習慣於將其放在/srv/aubapp/bin/下

#!/bin/sh  
#設定web應用程式目錄  
export CATALINA_BASE="/srv/aubapp"  
#設定Tomcat發行版安裝目錄  
export CATALINA_HOME="/opt/Tomcat"  
#後臺啟動Tomcat,並將控制檯日誌重定向  
nohup sh /opt/Tomcat/bin/catalina.sh run >../logs/tomcat.log 0</dev/null 2>&1 &  

啟動後,訪問方式與war包部署和目錄部署一樣。