1. 程式人生 > >tomcat部署方法彙總

tomcat部署方法彙總

一、靜態部署

1、直接將web專案檔案件拷貝到webapps 目錄中
     TomcatWebapps目錄是Tomcat預設的應用目錄,當伺服器啟動時,會載入所有這個目錄下的應用。所以可以將JSP程式打包成一個 war包放在目錄下,伺服器會自動解開這個war包,並在這個目錄下生成一個同名的資料夾。一個war包就是有特性格式的jar包,它是將一個web程式的所有內容進行壓縮得到。具體如何打包,可以使用許多開發工具的IDE環境,如Eclipse等。 也可以用 cmd 命令:jar -cvf mywar.war  myweb 
     webapps
這個預設的應用目錄也是可以改變。開啟Tomcat
conf目錄下的server.xml檔案,找到下面內容:

<Host name="localhost" appBase="webapps"

unpackWARs="true" autoDeploy="true"

xmlValidation="false" xmlNamespaceAware="false">

appBase修改即可。 
2、在server.xml中指定 
    Tomcat的配置檔案中,一個Web應用就是一個特定的Context,可以通過在server.xml中新建Context裡部署一個JSP應用程式。開啟server.xml檔案,在Host標籤內建一個Context

,內容如下。

tomcat中的conf目錄中,在server.xml中的,<host/>節點中新增:

<Context path="/hello" docBase="D:\ workspace\hello\WebRoot" debug="0" privileged="true"> 
</Context>

或者

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

說明:

path是虛擬路徑,tomcat訪問專案的專案名稱(名稱前面是反斜槓),eg:http://ip:port/

hello,這裡的hello,就是path配置的,這裡path不能放空

docBase 是應用程式的物理路徑,注意:這裡要物理路徑要到WEB-INF的上一級目錄;

workDir 是這個應用的工作目錄,存放執行時生成的與這個應用相關的檔案,主要是jsp翻譯成的.class檔案,放空預設路徑C:\apache-tomcat\work\Catalina\localhost

debug 則是設定debug level,  0表示提供最少的資訊,9表示提供最多的資訊,根據專案的部署情況,正式環境,或者開發環境

privileged設定為true的時候,才允許TomcatWeb應用使用容器內的Servlet

reloadable 如果為true,則tomcat會自動檢測應用程式的/WEB-INF/lib /WEB-INF/classes目錄的變化,自動裝載新的應用程式,可以在不重起tomcat的情況下改變應用程式,實現熱部署

antiResourceLockingantiJARLocking  熱部署是需要配置的引數,預設false避免更新了某個webapp,有時候Tomcat並不能把舊的webapp完全刪除,通常會留下WEB-INF/lib下的某個jar包,必須關閉Tomcat才能刪除,這就導致自動部署失敗。設定為trueTomcat在執行對應的webapp時,會把相應的原始檔和jar檔案複製到一個臨時目錄裡。
3、建立一個Context檔案 
  conf目錄中,新建 Catalinalocalhost目錄,在該目錄中新建一個xml檔案,名字不可以隨意取,要和path後的那個名字一致,按照下邊這個path的配置,xml的名字應該就應該是hellohello.xml),path可以放空,空自動預設是該XML檔案的名稱,xml檔案的內容為:

<Context path="/hello" docBase="E:\workspace\hello\WebRoot" debug="0" privileged="true"></Context>

tomcat自帶例子如下:

<Context docBase="${catalina.home}/server/webapps/host-manager"
         privileged="true" antiResourceLocking="false" antiJARLocking="false">
</Context>

這個例子是tomcat自帶的,編輯的內容實際上和第二種方式是一樣的,其中這xml檔名字就是訪問路徑,這樣可以隱藏應用的真實名字。

4、注意:

刪除一個Web應用同時也要刪除webapps下相應的資料夾和server.xml中相應的Context,還要將Tomcatconf\catalina\localhost目錄下相應的xml檔案刪除,否則Tomcat仍會去配置並載入。。。

二 動態部署

登陸tomcat管理控制檯:http://localhost:8080/,輸入使用者名稱和密碼後便可管理應用並動態釋出。

Context Path(option):中輸入/yourwebname ,這代表你的應用的訪問地址。

     XML Configration file URL中要指定一個xml檔案,比如我們在F:\下建立一個hmcx.xml檔案,內容如下: <Context reloadable="false" />其中docBase不用寫了,因為在下一個文字框中填入。或者更簡單點,這個文字框什麼都不填,在WAR or Directory URL:中鍵入F:\hmcx即可,然後點選Deploy按鈕,上面就可以看到了web應用程式,名字就Context Path(option):中的名字。


如果部署.war檔案還有更加簡單的方式,下面還有個Select WAR file uploae點選瀏覽選擇.war檔案,然後點選Deploy也可以。