天天看點

***tomcat配置檔案server.xml詳解

Tomcat下conf下server.xml的檔案配置資訊,基本上不用做任何修改就可以使用,修改的地方就是host區域的一些配置,此檔案設定端口為80。

注意:Tomcat配置檔案中(即server.xml檔案)不能出現中文,否則服務是無法啟動的。

<!-- Server中的port監聽關閉tomcat的請求,shutdown指定向端口發送的指令串-->  

<Server port="8005" shutdown="SHUTDOWN" debug="0">  

   <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"  

             debug="0"/>  

   <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"  

   <GlobalNamingResources>  

     <Environment name="simpleValue" type="java.lang.Integer" value="30"/>  

     <Resource name="UserDatabase" auth="Container"  

               type="org.apache.catalina.UserDatabase"  

        description="User database that can be updated and saved">  

     </Resource>  

     <ResourceParams name="UserDatabase">  

       <parameter>  

         <name>factory</name>  

   <!--value與Logger差不多prefix和suffix解釋一樣,className指定value使用的類名如:org.apache.catalina.values.AccessLogValve類可以記錄應用程式的通路資訊,directory指定log 檔案存放位置,pattern有兩值,common方式記錄遠端主機名或ip位址,使用者名,日期,第一行請求的字元串,HTTP響應代碼,發送的位元組數。 combined方式比common記錄更多-->  

         <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>  

       </parameter>  

         <name>pathname</name>  

         <value>conf/tomcat-users.xml</value>  

     </ResourceParams>  

   </GlobalNamingResources>  

   <Service name="Catalina">  

     <!-- Connector中的port建立伺服器端的端口号,此端口監聽使用者端的請求  

maxThreads最大可以建立請求的線程數  

minSpareThreads服務啟動時建立的處理請求的程序數  

enableLookups如果為true,則可以通過調用request.getRemoteHost()進行DNS查詢來得到遠端用戶端的實際主機名,若為false則不進行DNS查詢,而是傳回其ip位址  

redirectPort指定伺服器正在處理http請求時收到一個SSL傳輸請求後重定向的端口号  

acceptCount指定當處理請求線程都被使用時,可以放入處理隊列的數目,超出将不進行處理  

connectionTimeout指定逾時的時間數(毫秒)-->  

     <Connector port="80"  

                maxThreads="150" minSpareThreads="25" maxSpareThreads="75"  

                enableLookups="false" redirectPort="8443" acceptCount="100"  

                debug="0" connectionTimeout="20000"  

                disableUploadTimeout="true" />  

     <Connector port="8009"  

                enableLookups="false" redirectPort="8443" debug="0"  

                protocol="AJP/1.3" />  

<!--Engine指定預設的處理請求主機名,需要有一個與host元素的name屬性一緻-->  

     <Engine name="Catalina" defaultHost="localhost" debug="0">  

       <!--logger中表示日志資訊className為指定logger使用的類名此類必須實作 org.apache.catalina.Logger接口prefix指定log檔案的字首,suffix指定字尾,timestamp如果為true 則log檔案名中加入時間-->  

       <Logger className="org.apache.catalina.logger.FileLogger"  

               prefix="catalina_log." suffix=".txt"  

               timestamp="true"/>  

    <!--Realm存放使用者名密碼及role資料庫,className指定Realm使用的類名必須實作org.apache.catalina.Realm接口-->  

       <Realm className="org.apache.catalina.realm.UserDatabaseRealm"  

                  debug="0" resourceName="UserDatabase"/>  

        <!--host中name是指定的主機名或ip,appBase應用程式目錄,unpackWARs如果為true則會自動解壓war檔案直接運作否則不解壓-->  

   <Host name="192.168.4.247" debug="0" appBase="D:/project/hbgs_dddu/webapps"  

        unpackWARs="true" autoDeploy="true"  

        xmlValidation="false" xmlNamespaceAware="false">  

   <!--logger中表示日志資訊className為指定logger使用的類名此類必須實作 org.apache.catalina.Logger接口prefix指定log檔案的字首,suffix指定字尾,timestamp如果為true 則log檔案名中加入時間-->  

         <Logger className="org.apache.catalina.logger.FileLogger"  

                  directory="logs"   prefix="localhost_log.zx" suffix=".txt"  

             timestamp="true"/>  

   <!--Context一個web應用程式通常為war檔案,關于war的具體資訊見servlet規範,docBase應用程式的路徑或者war 檔案的存放路徑,path表示此web程式的url字首,reloadable如果為true,Tomcat會自動檢測應用程式的變化,自動裝載新的應用程式,那麼改變代碼将不用再次重新啟動tomcat-->  

   <Context path="" docBase="D:/project/hbgs_dddu/webapps" debug="0" reloadable="true"/>  

   </Host>  

     </Engine>  

   </Service>  

</Server>  

注意:

<!--Context一個web應用程式通常為war檔案,關于war的具體資訊見servlet規範,docBase應用程式的路徑或者war 檔案的存放路徑,path表示此web程式的url字首,reloadable如果為true,Tomcat會自動檢測應用程式的變化,自動裝載新的應用程式,那麼改變代碼将不用再次重新啟動tomcat-->  

   <Context path="" docBase="D:/project/hbgs_dddu/webapps" debug="0" reloadable="true"/>  

path表示此web程式的url字首,path為空,那麼通路的時候,就不用輸入咯

比如一般通路首頁是:http://localhost/mobile ;如果這裡的path為空,這麼就可以直接用http://localhost/去通路項目首頁

reloadable如果為true,Tomcat會自動檢測應用程式的變化,自動裝載新的應用程式,那麼改變代碼将不用再次重新啟動tomcat

如何聯系我:【萬裡虎】www.bravetiger.cn

【QQ】3396726884 (咨詢問題100元起,幫助解決問題500元起)

【部落格】http://www.cnblogs.com/kenshinobiy/