tomcat6路徑配置心得

在tomcat6路徑配置中,要通過對TOMCAT_HOME/conf/server.xml中的<Host></Host>標籤中進行設置。具體是這樣的:

<Host name="localhost"  appBase="E:/JavaProject/eclipse33Project/test"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

<Host>

這樣將站點設置到E:/JavaProject/eclipse33Project/test目錄下邊。這時默認的網站根目錄是ROOT。如果需要設置其它的虛擬目錄,需要在TOMCAT_HOME/conf/[enginename]/[hostname]/[網站根目錄名].xml設置。
如在TOMCAT_HOME/conf/Catalina/localhost/WebRoot.xml下加如下內容:
<Context path="/WebRoot" docBase="WebRoot" debug="0" reloadable="true">
</Context>
也可以不需要設置WebRoot.xml文件,但必須要有TOMCAT_HOME/conf/Catalina/localhost的文件,這樣與最初安裝tomcat的webapps文件設置相同(我個人認爲)


在<Host></Host>標籤下設置<Context></Context>標籤如下:

<Host name="localhost"  appBase="E:/JavaProject/eclipse33Project/test"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
            
        <Context path="" docBase="WebRoot" debug="0" reloadable="true"></Context>

<Host>

這樣只可以設定特定的<Context>標籤中虛擬路徑。如果E:/JavaProject/eclipse33Project/test目錄下還有其它的目錄如App2,如果沒有在<Host>標籤下設置<Context>標籤,則無法打開其虛擬路徑。


所有Context的實現支持如下屬性:

屬性描述
backgroundProcessorDelay 這個值代表在context及其子容器(包括所有的wrappers)上調用backgroundProcess方法的延時,以秒爲單位。如果延時值非負,子容器不會被調用,也就是說子容器使用自己的處理線程。如果該值爲正,會創建一個新的線程。在等待指定的時間以後,該線程在主機及其 子容器上調用backgroundProcess方法。context利用後臺處理session過期,監測類的變化用於重新載入。如果沒有指定,該屬性的缺省值是-1,說明context依賴其所屬的Host的後臺處理。
className 實現的Java類名。該類必須實現org.apache.catalina.Context接口。如果沒有指定,使用標準實現(在下面定義)。
cookies

如果想利用cookies來傳遞session identifier(需要客戶端支持cookies),設爲ture。否則爲false,這種情況下只能依靠URL Rewriting傳遞session identifier。

 

crossContext

如果想在應用內調用ServletContext.getContext()來返回在該虛擬主機上運行的其他web application的request dispatcher,設爲true。在安全性很重要的環境中,設爲false,使得getContext()總是返回null。缺省值爲false。

docBase

該web應用的文檔基準目錄(Document Base,也稱爲Context Root),或者是WAR文件的路徑。可以使用絕對路徑,也可以使用相對於context所屬的Host的appBase路徑。

 

override

如果想利用該Context元素中的設置覆蓋DefaultContext中相應的設置,設爲true。缺省情況下使用DefaultContext中的設置。

privileged

設爲true,允許context使用container servlets,比如manager servlet。

 

path

web應用的context路徑。catalina將每個URL的起始和context path進行比較,選擇合適的web應用處理該請求。特定Host下的context path必須是惟一的。如果context path爲空字符串(""),這個context是所屬Host的缺省web應用,用來處理不能匹配任何context path的請求。

 

reloadable 如果希望Catalina監視/WEB-INF/classes/和/WEB-INF/lib下面的類是否發生變化,在發生變化的時候自動重載web application,設爲true。這個特徵在開發階段很有用,但也大大增加了服務器的開銷。因此,在發佈以後,不推薦使用。但是,你可以使用Manager應用在必要的時候觸發應用的重載。
wrapperClass

org.apache.catalina.Wrapper實現類的名稱,用於該Context管理的servlets。如果沒有指定,使用標準的缺省值。

 

 

轉帖自:http://www.blogjava.net/wangxinsh55/archive/2007/08/11/136122.html

發佈了49 篇原創文章 · 獲贊 3 · 訪問量 44萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章