Tomcat Context配置

<Context>元素的屬性:
path:指定訪問該Web應用的URL入口。
docBase:指定Web應用的文件路徑,可以給定絕對路徑,也可以給定相對於<Host>的appBase屬性的相對路徑,如果Web應用採用開放目錄結構,則指定Web應用的根目錄,如果Web應用是個war文件,則指定war文件的路徑。(指定項目所在地址)
reloadable:如果這個屬性設爲true,tomcat服務器在運行狀態下會監視在WEB-INF/classes和WEB-INF/lib目錄下class文件的改動,如果監測到有class文件被更新的,服務器會自動重新加載Web應用。

 

 

 

在默認安裝後,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的虛擬目錄)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章