1、開啟tomcat的server.xml找到<Host></Host>如下
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- SingleSignOn valve, share authentication between web applications
Documentation at: /docs/config/valve.html -->
<!--
<Valve className="org.apache.catalina.authenticator.SingleSignOn" />
-->
<!-- Access log processes all example.
Documentation at: /docs/config/valve.html
Note: The pattern used is equivalent to using pattern="common" -->
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
2.增加<Context path="" reloadable="true" docBase="<項目名>"/>在<Host></Host>之間
如:<Context path="" docBase="gqxt" reloadable="true"/>
3.注:通過上面的設定有一個問題就是項目會重複載入兩次.
原因分析
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="gqxt" reloadable="true"/>
1.當為 Host 容器 設定了 appBase 屬性時, Tomcat 會在啟動時自動載入 appBase 指定目錄下的所有合法工程;
2. 由於同時又通過 Context 的docBase 屬性設定了Tomcat 預設工程, 所以,指定的 gqxt工程又會被載入一次
基於以上兩點,造成了 gqxt工程的重複載入。
解決辦法
1. 建立一個目錄專門用於存放工程, 如: D:\apache-tomcat-7.0.54\app
2. 將工程存放到以上目錄下:即:D:\apache-tomcat-7.0.54\qpp\gqxt
3. 在 Context 容器中設定 docBase 屬性, 如:
<Context path="" docBase="D:\apache-tomcat-7.0.54\qpp\gqxt" />
至此問題解決,重啟Tomcat伺服器就可以通過不加項目名訪問此項目.
注意:記得把webapps目錄下的原項目刪除