Tomcat中部署web應用的三種方式(靜態部署)
第一種,
針對war或解壓后的war,
最為常用的是直接操作webapp目錄,將完整的war包或者web應用直接放到webapp目錄下。使用war包時,啟動tomcat后會將war包解壓縮並生成同名稱的文件夾。
webapp文件夾是可控的,可以在server.xml中修改<Host>節點的appBase元素。
ps:測試將appBase指定為絕對路徑"D:/testFolder"和相對路徑"../webapps"均可,啟動tomcat后會在配置的對應目錄下自動解壓war包。
第二種,針對未打包的工程或war或解壓后的war包可用,不會再webapps目錄生成文件
,配置conf/server.xml,在<Host>節點中添加<Context>子節點,可以配置多個。其中docBase元素指定到
webContent目錄,path最為虛擬路
徑,如:
①.未打包的工程
<Contextpath="/UrlStatic1"docBase="D:\myFolder1\UrlStatic\WebContent"privileged="true"/>
<Contextpath="/UrlStatic2"docBase="D:\myFolder2\UrlStatic\WebContent"privileged="true"/>
請求位置:
http://localhost:8080/UrlStatic1/
http://localhost:8080/UrlStatic2
②.已發布的war包,不能加privileged屬性
<Contextpath="/what"docBase="D:/myFolder/UrlStatic.war"debug="0"/>
請求位置:
http://localhost:8080/what/
③.解壓war
<Contextpath="/what"docBase="D:/myFolder"debug="0"/>
請求位置:
http://localhost:8080/what/
第三種,針對
未打包的工程或
war或解壓后的war可用,在D:\apache-tomcat-6.0.41\conf\Catalina\localhost目錄下
添加xml文件。在xml中配置<Context>元素,設定path無效,
默認將xml名稱將作為虛擬路徑。訪問:
localhost:8080/虛擬路徑(即xml的名稱,如myDemo.xml虛擬路徑為myDemo)。 此種方式也會將war包自動解壓至webapps下,若非war包則不會有操作。
例如:
myDemo2.xml:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ContextdocBase="D:/myFolder/UrlStatic.war"debug="0">
</Context>
請求位置:
http://localhost:8080/myDemo2/
其他方式同第二種。