配置Tomcat虛擬主機

配置Tomcat虛擬主機


<Tomcat安裝目錄>/conf文件夾下的server.xml文件中,<host>元素代表虛擬主機,在同一個<engine>元素下可以有多個細膩主機。


在未設置虛擬主機的默認情況下,server.xml配置文件中默認已經存在一個name屬性爲localhost的<host>元素。要配置新的主機只用在默認<host></host>元素後,新增一對<host></host>元素。


一對<host>元素中可以包含多個<alias>元素,<alias>元素表示爲該主機指定別名。


例如:


<host name="www.eugeneheen.com" appBase="webapps"


<alias>eugeneheen.com</alias>


</host>


<host>元素的name屬性的值代表虛擬主機名。


該虛擬主機name屬性爲www.eugeneheen.com,這時就能通過http://www.eugeneheen.com:8080/webapps/hello/hello.html來訪問hello應用下的hello.html靜態網頁或其它資源。


appBase表明該應用屬於文件的相對路徑爲/webapps目錄下。(也可以是絕對路徑)


例如:當前appBase屬性爲webapps,那麼開放式發佈就將整個項目結構複製到webapps目錄下,如果事WAR打包文件,在服務器啓動時就會自動解壓一個名字與WAR包相同的項目結構文件夾到webapps下。(換言之appBase屬性的值就應用發佈的根目錄)


unpackWARs屬性如果爲true就表明在appBase下的應用如果是打包好的WAR文件,則會先打開WAR包再運行,如果值爲false就會直接運行WAR包。


autoDeploy屬性的值爲布爾類型,如果爲true,則Tomcat在運行狀態時,能夠監測到appBase下的文件,如果有新的應用加入則會自動發佈這個應用。


<host>元素內嵌套的<alias>元素能爲該虛擬主機設置別名。可以設置多個別名。


例如:上面爲虛擬主機www.eugeneheen.com設置了eugeneheen.com和eugeneheen兩個別名。


這時我們除了能通過http://www.eugeneheen.com:8080/webapps/hello/hello.html來訪問hello應用下的hello.html靜態網頁或其它資源外,還能通過:


http://eugeneheen.com:8080/webapps/hello/hello.html





http://eugeneheen:8080/webapps/hello/hello.html


這個來完成訪問。


注意:如果要使配置的虛擬機生效,必須在DNS服務器上註冊以上虛擬機名和別名。使它的IP地址都指向Tomcat服務器所在的主機。


必須註冊<host>元素的name屬性值和所有嵌套在<host>元素內的別名。


配置和註冊完成後重啓Tomcat服務器後就能正常使用虛擬主機和所有別名來進行訪問了!


DNS服務器中註冊虛擬主機和別名,使它們的IP地址指向Tomcat服務器所在主機:


以Windows XP爲例,更改C:WINDOWSsystem32driversetchosts文件中註冊IP地址指向Tomcat服務器所在主機。


加入內容格式:IP + 空格 + host元素name屬性/alias,例如:192.0.0.1 www.eugeneheen.com


加入後,完成DNS服務器註冊,IP指向虛擬主機和別名。 9:43:49 PM| View trackbacks (0)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章