1. 程式人生 > >Tomcat 利用server.xml進行專案對映的部署

Tomcat 利用server.xml進行專案對映的部署

平時一般都是在myeclipse上直接把專案載入至tomcat伺服器的webApp目錄進行專案的部署,

但是這樣子有不方便的地方,如果是已經部署了很多個專案,包之間有衝突的話,一個個remove掉很麻煩,而且還佔空間。

可以使用tomcat的conf目錄下的server.xml配置檔案進行web專案的對映部署,把不在webApp目錄的專案部署執行起來。

具體方法是開啟tomcat下conf/server.xml,在<Host> </Host>標籤之間輸入專案配置資訊。一個例子如下:

      <Host name="localhost"  appBase="webapps" unpackWARs="true" autoDeploy="true"  xmlValidation="false" xmlNamespaceAware="false">

        <!-- 配置方法<Context path="/訪問目錄名" docBase="e:/專案/WebRoot" debug="0" reloadable="true"/>-->

        <!-- 第一個專案-->
        <Context path="/struts" docBase="D:\Struts2\WebRoot" reloadable="true">
        </Context>

        <!--第二個專案-->
        <!--
        <Context path="/robot" docBase="D:\My Documents\MyEclipseWorkspace\robot\WebRoot" reloadable="true">
        </Context>
        -->  


      </Host>

上面的幾個配置引數的含義如下:

path:瀏覽器訪問時的路徑名,如第一個專案,瀏覽器訪問時路徑名是(我的是80埠):localhost/struts/index.jsp

docBase:web專案的WebRoot所在的路徑,注意是WebRoot的路徑,不是專案的路徑。

debug:值為0的話,表示不列印日誌

reloadble:設定專案有改動時,tomcat是否重新載入該專案

以對映的方式部署專案,優點是很明顯的,節約了空間,而且想要不載入其他專案時,只需要註釋掉配置就可以,需要再用的時候只需取消

註釋就行,這在開發中是很方便的。

有一點要注意的是,如果是用Notepad++或者其他編輯器改寫server.xml時,注意一定要以utf-8的編碼方式儲存

,否則啟動tomcat時會提示

com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: Invalid byte 2 of 2-byte UTF-8 sequence.的錯誤。