Tomcat 標籤詳解

<Context>元素的屬性: 


path:

指定訪問該Web應用的URL入口,即虛擬文件目錄。

例如:

<Context path="test" docBase="D:/Workspace/Test/WebRoot" reloadable="true" />

瀏覽器訪問地址爲:"http://IP地址或域名:端口/test"

paht可以爲空字符串,爲空字符串時表示此項目爲Tomcat默認的項目。

 


docBase:

docBase除了可以爲本地項目WebRoot絕對路徑,也可以是相對Tomcat的webapps目錄的成品項目(可以理解爲“war文件解壓後的項目”)路徑。

例如:

Tomcat的webapps目錄下有一個成品項目(可以理解爲“war文件解壓後的項目”),項目的文件夾爲“Test”,那麼可以有以下寫法:

<span style="font-size:18px;"><Context path="test" docBase="Test" reloadable="true" /></span>

瀏覽器訪問地址爲:"http://IP地址或域名:端口/test"


reloadable:

如果這個屬性設爲true,tomcat服務器在運行狀態下會監視在WEB-INF/classes和WEB-INF/lib目錄下class文件的改動,
如果監測到有class文件被更新的,服務器會自動重新加載Web應用。
你可以不用每次修改代碼後都在eclipse上重新部署。

 


在默認安裝後,tomcat的主目錄是webapps/root目錄,如果我們想改變tomcat的主目錄的話可以這樣做:

1.打開C:/Tomcat/conf/server.xml,在<host></host>之間加入代碼:

<Context path="" docBase="E:/tomcatApp/JeasyCMS" debug="0" reloadable="true" crossContext="true"/>

這樣重新啓動tomcat,我們的主目錄就被設置爲jeasyCMS這個項目了。


2.另外tomcat會生成一個C:/Tomcat/conf/Catalina/localhost目錄,裏面自動生成了一個ROOT.xml(root大寫)文件,我們打開文件可以看到這些代碼:

<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="E:/tomcatApp/JeasyCMS" path="" reloadable="true">
</Context>


3.注意:我們創建虛擬目錄的時候也是這樣來進行設置的,只是context這個標籤的path屬性不爲空。

4.我們設置虛擬目錄和主目錄,都會在C:/Tomcat/conf/Catalina/localhost目錄下生成相應的xml文件,因此,當我們在server.xml裏面刪除了主目錄和虛擬目錄的設置後,如果系統還沒有生效,這時候我們就要察看一下這個目錄下的xml文件是不是已經被刪除了,如果沒有被刪除,他還是對tomcat起作用的,我們必須手動刪除。

5.基於第4點,通過測試我發現,每當我們訪問一個地址的時候,tomcat首先是到C:/Tomcat/conf/Catalina/localhost目錄下去察看有沒有存在主目錄或虛擬目錄的xml文件,如果有xml文件,就按xml裏的路徑進行訪問,如果沒有xml文件,就到server.xml文件裏去察看是否配置context標籤,如果配置了context標籤,則在C:/Tomcat/conf/Catalina/localhost目錄下生成一個對應的xml文件,以便於下次直接驗證而不再訪問server.xml,與此同時打開context裏指定的路徑,如果server.xml裏沒有配置context標籤,則返回訪問錯誤頁面。

6.基於第5點,我們其實可以直接在C:/Tomcat/conf/Catalina/localhost下建立一個xml文件,用於主目錄或者虛擬目錄,而不需要去修改server.xml就可以達到配置主目錄和虛擬目錄的目的,具體xml的格式可以如下:

<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="E:/tomcatApp/JeasyCMS" path="" reloadable="true">
</Context>

具體是主目錄的配置還是虛擬目錄的配置取決於path的值。另外主目錄文件名必須是ROOT.XML(root大寫),而虛擬目錄的文件名稱和虛擬目錄的名稱一致並且爲小寫,譬如:
<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="E:/tomcatApp/JeasyCMS" path="/cms" reloadable="true">
</Context>

以上則定義了一個名爲:cms的虛擬目錄,同時要將以上文本保存爲cms.xml文件

7.以上住目錄配置好後就可以按以下地址訪問了:

http://localhost:8080/(訪問主目錄)

http://localhost:8080/cms (訪問名爲cms的虛擬目錄)
發佈了39 篇原創文章 · 獲贊 52 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章