Tomcat設置默認訪問項目及項目重複加載問題處理

今天解決公司網站只要經過域名加端口就能夠訪問的問題(因爲沒有設置tomcat默認啓動項致使當不輸入項目名訪問項目時,看到的是Tomcat配置頁面),雖之前有弄過,但記不太全了,仍是那句話"好記性不如爛筆頭". 

主要是經過配置<Tomcat安裝目錄>/conf/server.xml文件  

步驟: 
一、打開server.xml,在</Host>的上一行添加內容格式以下 
<Context path="" reloadable="true" docBase="<項目名>"/> 
如: 
<Context path="" docBase="gps" debug="0" reloadable="true"/> 
dosBase裏寫的是你要設置爲默認項目的名稱。 

另: 若是想要只輸入IP或域名就能夠訪問的話,那就把Tomcat的端口設置爲80(但需確認此端口有沒有其它程序佔用),修改以下: 

<Connector  port="80"   maxHttpHeaderSize="8192" 
    maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 
    enableLookups="false" redirectPort="8443" acceptCount="100" 
    connectionTimeout="20000" disableUploadTimeout="true" /> 


注:經過上面的設置有一個問題就是項目會重複加載兩次.  

緣由分析  
<Host name="localhost"  appBase="webapps" 
       unpackWARs="true" autoDeploy="true" 
       xmlValidation="false" xmlNamespaceAware="false"> 

<Context path="" docBase="gps"  reloadable="true"/> 

1.當爲 Host 容器 設置了 appBase 屬性時, Tomcat 會在啓動時自動加載 appBase 指定目錄下的全部合法工程;
2. 因爲同時又經過 Context 的docBase 屬性設置了Tomcat 默認工程, 因此,指定的 gps工程又會被加載一次 
基於以上兩點,形成了 gps工程的重複加載。 

解決辦法  
1. 新建一個目錄專門用於存放工程, 如: G:\apache-tomcat-6.0.20\project 
2. 將工程存放到以上目錄下:即:G:\apache-tomcat-6.0.20\project\gps 
3. 在 Context 容器中設置 docBase 屬性, 如: 
<Context path="" docBase="G:\apache-tomcat-6.0.20\project\gps" /> 

至此問題解決,重啓Tomcat服務器就能夠經過不加項目名訪問此項目. 
注意:記得把webapps目錄下的原項目刪除
相關文章
相關標籤/搜索