先說一下在本地電腦怎麼實現:html
想要在一個tomcat下訪問兩個web項目時,能夠經過添加虛擬host的方式來解決。web
詳細步驟以下:spring
一、將兩個項目打包放入tomcat的webapps目錄下;apache
二、修改tomcat的server.xml文件,原來的代碼以下:tomcat
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>app
添加代碼後以下:框架
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="ROOT" docBase="/ROOT"/>
</Host>
<Host name="myspring.com" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="/SpringMvcArchitect2"/>
</Host>webapp
需注意兩點:a、原來的host須要加上context標籤,而且path由原來的空變爲項目名,由於兩個host的path不能同時爲空,否則會訪問出錯,原來的項目名默認爲ROOT。spa
b、添加新的host,將docBase裏的路徑設置爲第二個web項目的路徑,這裏爲/SpringMvcArchitect2,name爲虛擬域名,自定義的。server
三、修改機器的host文件(區別於上面的Host標籤,是系統host文件),添加一個ip映射,例如添加的host的name爲myspring.com,則往系統host文件中添加127.0.0.1 myspring.com
四、重啓tomcat,就能夠使用localhost:8080和myspring.com:8080訪問兩個web項目了,這裏端口設置爲8080,能夠本身更改。
五、同理能夠擴展爲多個web項目,只需配置多個host便可
附:部分項目如jfinal框架默認的項目在ROOT下,因此war包不能都放webapps文件夾下,這樣需另外存放路徑如E:\test
一、 server.xml配置文件以下
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="ROOT" docBase="C:\tomcat\webapps\ROOT"/>
</Host>
<Host name="test.xiuyuewang.com" appBase="E:\test"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
<Context path="" docBase="E:\test\ROOT" reloadable="false" crossContext="true"/>
</Host>
二、 系統host配置文件
添加 127.0.0.1 新域名
三、重啓tomcat。
原文來自http://www.cnblogs.com/JOEH60/p/6022228.html