在眼下,很是多server都是一臺server對外可以訪問很是多個javaEE的項目,這樣的實現方式就需要在tomcat裏面配置虛擬主機了!如下就說說怎樣配置虛擬主機:html
找到tomcat的安裝文件夾,到TOMCAT_HOME/apache-tomcat7/conf文件夾下,找到server.xml這個文件,打開該文件,在該文件裏找到關於Engine這個子節點
java
<Engine name="Catalina" defaultHost="localhost">
上面的配置了一個defaultHost中的localhost表示爲默認的訪問方法! 咱們需要配置本身的記住就需要在Engine節點中加入Host節點,默認的有一個host例如如下:web
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
這個裏面的name表示的是訪問本地的localhost地址,appBase表示項目指定的父位置,當前的webapps表明:TOMCAT_HOME/apache-tomcat7/webapps這個位置,這個位置也是tomcat的默認的存放javaEE項目位置!spring
如下是我本身配置的一個虛擬主機:apache
<Host name="www.abc.net" appBase="/var/JavaServer/test" unpackWARs="true" autoDeploy="true"> <Alias>abc.com</Alias> <Context path="/hello" docBase="/var/www/html/hello" debug="0" privileged="true"/> </Host>
具體介紹一下:Host節點表明爲一個虛擬主機,name表示需要訪問的域名,這個域名是已經註冊的域名!當前配置的域名:www.abc.net 在Host下有一個子節點,叫Alias,這個裏面配置的是 另一個域名,就是說,一個虛擬主機,可以使用多個域名!
那麼訪問www.abc.net 和abc.com是同樣的!tomcat
appBase需要你指定的項目父路徑,在當前的路徑下可以存放多個項目 ,咱們可以把項目打包或者放文件夾放在/var/JavaServer/test這個文件夾下app
unpackWARs="true" 表示當發現在/var/JavaServer/test有打包的war項目的話,就開啓解壓功能!webapp
autoDeploy="true" 表示支持熱部署!spa
如下說說在Host節點下的Context節點,這個就是部署一個項目,但是這個項目不是在appBase文件夾下,他的路徑在/var/www/html/hello這個文件夾下,path表示對外訪問的名稱, 這樣使得tomcat靈活多變 !.net
關於tomcat配置虛擬主機我也講到這裏了 假設有不明確的,可以聯繫我
author:spring sky Email:vipa1888@163.com QQ: 840950105