时间:2021-07-01 10:21:17 帮助过:30人阅读
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>
<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>
<-- Realm组件,定义对当前容器内的应用程序访问的认证,通过外部资源UserDatabase进行认证 -->
<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接口来定义.它包含一个
Listener标签:监听器,用来管理Tomcat生命周期和全局资源
GlobalNamingResources标签:配置系统的JNDI
Service标签:该元素由org.apache.catalina.Service接口定义,它包含一个
Connector标签:连接器,代表外部客户之间的接口,将在一个指定的接口上侦听客户请求,将请求给Engine进行处理Connector之间的port不能重复,否则会报JVM BIND 端口号冲突的问题
Enger标签:引擎,每个Service元素只能有一个Engine元素.元素处理在同一个
Realm标签:定义对当前容器内的应用程序访问的认证,通过外部资源UserDatabase进行认证
Logger标签:
Host标签:它由Host接口定义.一个Engine元素可以包含多个
Logger标签:日志和错误信息
Context标签:web应用组,它由Context接口定义.是使用最频繁的元素.每个