tomcat中應用部署問題

Tomcat部署發佈WEB應用程序的三種方法

1、直接放到Webapps目錄下
    Tomcat
Webapps目錄是Tomcat默認的應用目錄,當服務器啓動時,會加載所有這個目錄下的應用。也可以將JSP程序打包成一個war包放在目錄下,服務器會自動解開這個war包,並在這個目錄下生成一個同名的文件夾。

2、在server.xml中指定
    
Tomcat的配置文件中,一個Web應用就是一個特定的Context,可以通過在server.xml中新建Context裏部署一個JSP應用程序。打開server.xml文件,在Host標籤內建一個Context,內容如下。
<Context path="/myapp" reloadable="true" docBase="D:/myapp" workDir="D:/myapp/work"/>
    
其中path是虛擬路徑(上下文路徑,訪問路徑,即http://localhost/[path]),docBaseJSP應用程序的物理路徑,workDir是這個應用的工作目錄,存放運行是生成的於這個應用相關的文件。
3
、創建一個Context文件 (這個文件是必然會有的,使用上述方法可以生成本文件,當然我們也可以自己創建)
    
以上第2,3方法,Web應用被服務器加載後都會在Tomcatconf/catalina/localhost目錄下生成一個XML文件,其內容如下
<Context path="/myapp" docBase="${catalina.home}/server/webapps/myapp" debug="0" privileged="true"></Context>
可以看出,文件中描述一個應用程序的Context信息,其內容和server.xml中的Context信息格式是一致的,文件名便是虛擬目錄名,即該文件的名字爲myapp.xml。您可以直接建立這樣的一個xml文件,放在Tomcatconf/catalina/localhost目錄下。

其實,還有一種方法是:

$CATALINA_BASE/webapps目錄下創建myapp.xml

 

各人總結-zcc

部署的本質就是讓tomcat知道web應用在哪裏。有兩種方法,拷貝web應用到指定的文件夾裏,或者編輯context元素,告訴tomcat在哪。只要知道這些,就能理解上面的方法。

附:

如何刪除一個web應用

1.       刪除webapps下相應的文件夾。

2.       刪除server.xml中相應的Context(如果有的話)

3.       刪除Tomcatconf /catalina/localhost目錄下相應的xml文件(必然會有)。

 

 

另外,爲了讓tomcat只運行conf/server.xml中指定的web應用,可以有以下幾種辦法:
實現一:
     1)
將要部署的WEB應用放在webapps以外的路徑並在server.xml相應的context中的docBase指定.
     2)
刪除webapps中的所有文件夾以及conf/catalina/localhost下所有xml文件.
     
: webappsserver.xml中的Host元素的appBase屬性的值
實現二:
     1) 
修改server.xmlHost元素的屬性添加或修改: deployXML="false" deployOnStartup="false" autoDeploy="false"
     2) 
含義:
     deployXML="false": 
不部署conf/catalina/localhost下的xml相應的WEB應用     deployOnStartup="false" : tomcat啓動時不部署webapps下的所有web應用     autoDeploy="false": 避免tomcat在掃描改動時再次把webapps下的web應用給部署進來.

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