tomcat Host及Context 配置

參考資料:web

1、Host配置

對一個Tomcat,能夠配置多臺虛擬主機。簡單地說,就是讓一臺服務器能夠對應多個主機名。這在Tomcat中稱之爲Host。要求每一個Host的Name必須惟一。tomcat

配置方法:服務器

編輯$CATALINA_HOME/conf/server.xml,添加以下內容:app

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"> 
</Host>

appBase指定了該虛擬主機上應用的部署位置,通常填寫相對於CATALINA_HOME的相對路徑便可。固然,也能夠填寫其餘地址,如<Context path="" docBase="E:/tomcatApp/JeasyCMS" debug="0"  reloadable="true" />webapp

 

2、Context配置

在一個Host上,能夠部署多個應用。每一個應用都有不一樣的Context Path,Context Path會出如今用戶訪問該應用的URL中。示例以下:spa

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
           <Context docBase="zhx-web" path=""  reloadable="true"  ></Context> /* Root Context */
           <Context docBase="ROOT" path="/admin"  reloadable="true" ></Context>            /* path 須爲空 或 以/開頭且不以/結束 */
      </Host>

若是Tomcat綁定的端口爲8080,則訪問 http://localhost:8080 便可訪問 項目zhx-web,訪問 http://localhost:8080/admin 便可訪問項目 ROOT 。debug

須要注意的是:code

一、當未給Host配置Context時,Tomcat默認把ROOT項目做爲Root Context,即此時訪問 http://localhost:8080 就是訪問ROOT項目server

二、當給Host配置Context時,若是path="" 或 path="/",則至關於將此Context指定爲Root Context,上面所舉例子的第一個Contextxml

三、即便指定了項目對應的Context,在URL中也能夠經過完整路徑訪問到該項目。如對於上面所舉的第一個Context,當訪問 http://localhost:8080/zhx-web 時 仍能訪問到zhx-web項目

四、當指定了一個本身的項目做爲Root Context後,就沒法直接經過http://localhost:8080/ROOT訪問管理頁面了,因此加上 <Context docBase="ROOT" path="/admin" reloadable="true" ></Context> http://localhost:8080/admin訪問。

另外,webapps下的ROOT是tomcat的應用程序的根,若是應用程序部署在ROOT中,則可直接經過http://ip:port 訪問到

相關文章
相關標籤/搜索