1. 程式人生 > >Tomcat的配置文件詳解

Tomcat的配置文件詳解

tomcat 配置文件

Tomcat的配置文件構成:

通常在我們安裝完tomcat之後在/etc/tomcat目錄生成了一堆的配置文件,我們來看看這些配置文件的作用,tomcat的配置文件是使用java語言編寫:

server.xml:主配置文件;

web.xml:每個webapp只有“部署”後才能被訪問,它的部署方式通常由
web.xml進行定義,其存放位置為WEB-INF/目錄中;此文件為所有的
webapps提供默認部署相關的配置;
context.xml:每個webapp都可以使用的配置文件,它通常由專用的配置文
件context.xml來定義,其存放位置為WEB-INF/目錄中;此文件為所有的webapps提供默認配置;

tomcat-users.xml:用戶認證的賬號和密碼文件;角色(role),用戶(User);此文件在tomcat啟動時被裝入內存;
catalina.policy:當使用-security選項啟動tomcat時,用於為tomcat設置安全策略;
catalina.properties:Java屬性的定義文件,用於設定類加載器路徑,以及一些與JVM調優相關參數;
logging.properties:日誌系統相關的配置;

每一個組件都由一個Java“類”實現,這些組件大體可分為以下幾個類型:

頂級組件:Server
#server表示一個實例
服務類組件:Service
#service裏的connector的主要作用是將連接器根引擎關聯 起來的也就是說service裏面可以有多個connector但只能關聯一個引擎.

連接器組件:http, https, ajp(apache jserv protocol)

容器類:Engine, Host, Context

被嵌套類:valve, logger, realm, loader, manager, ...

集群類組件:listener, cluster, ...

下面是tomcat配置文件的骨架:

<server>
<service>
<connector />
<connector />
<engine>
<host>
<context />
</host>
</engine>

</service>
</server>

下面是刪掉註釋的配置文件示例:

[root@Centos6 ~ 62]#vim /etc/tomcat/server.xml

<?xml version=‘1.0‘ encoding=‘utf-8‘?>
<Server port="8005" shutdown="SHUTDOWN">
  <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
  <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
  <Listener className="org.apache.catalina.core.JasperListener" />
  <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
  <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
  <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />

  <GlobalNamingResources>

   <Resource name="UserDatabase" auth="Container"
              type="org.apache.catalina.UserDatabase"
              description="User database that can be updated and saved"
              factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
              pathname="conf/tomcat-users.xml" />
  </GlobalNamingResources>

  <Service name="Catalina">

    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

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

      <Realm className="org.apache.catalina.realm.LockOutRealm">

        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>

      <Host name="localhost"  appBase="webapps"
            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" />

      </Host>
    </Engine>
  </Service>
</Server>

Tomcat的配置文件詳解