Tomcat目录中的server.xml配置文件

server.xml称为主配置文件或全局配置文件

它完成以下两个目标:

1,提供Tomcat组件的初始化配置

2,说明Tomcat的结构和含义,使得Tomcat通过实例化组件完成启动及构建自身

代码解析如下:

 <Server port="8005" shutdown="SHUTDOWN">
      <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>
      
      <Service name="Catalina">
      
        <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">
          
            <Context path="" docBase=""/usr/local/tomcat/webfile" " reloadable="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>
登录后复制

标签功能如下:

server标签:根元素,它代表整个容器,Tomcat实例的顶层元素.org.apache.catalina.Server接口来定义.它包含一个元素.并且它不能做为任何元素的子元素.(其直接子元素有3个)

   Listener标签:监听器,用来管理Tomcat生命周期和全局资源

   GlobalNamingResources标签:配置系统的JNDI

   Service标签该元素由org.apache.catalina.Service接口定义,它包含一个元素,以及一个或多个,这些Connector元素共享用同一个Engine元素(其直接子元素2个)

      Connector标签:连接器,代表外部客户之间的接口,将在一个指定的接口上侦听客户请求,将请求给Engine进行处理Connector之间的port不能重复,否则会报JVM BIND 端口号冲突的问题

      Enger标签:引擎,每个Service元素只能有一个Engine元素.元素处理在同一个中所有元素接收到的客户请求.org.apahce.catalina.Engine接口定义.处理server中所有的客户请求(其直接子元素3个)

        Realm标签定义对当前容器内的应用程序访问的认证,通过外部资源UserDatabase进行认证

        Logger标签

        Host标签它由Host接口定义.一个Engine元素可以包含多个元素.每个的元素定义了一个虚拟主机.它包含了一个或多个Web应用.虚拟主机处理一个特定的主机请求(其直接子元素2个)

          Logger标签:日志和错误信息

          Context标签:web应用组,它由Context接口定义.是使用最频繁的元素.每个元素代表了运行在虚拟主机上的单个 Web应用.一个可以包含多个元素.每个web应用有唯一的一个相对应的Context代表web应用自身.servlet容器为第一个web应用创建一个ServletContext对象.当一个web应用被初始化时,它将用自己的classLoader对象载入”web.xml“中定义的每个Servlet类。元素中可以包含如下元素, , ,

      


09-06 11:10