说明:以下内容是自己看书时从书本上整理而来,在此记录一下,方便自己日后复习(自用),如果和网上帖子有相同,请联系本博主。
server.xml文件描述了如果启动Tomcat server:
<Server> <Listener/>
<GlobalNamingResources></GlobalNamingResources>
<Service>
<Connector/>
<Engine>
<Logger/>
<Realm>
<host>
<Logger/>
<Context/>
</host>
</Realm>
</Engine>
</Service>
<Server>
(1) <server>元素:它代表了整个容器,是Tomcat实例的顶层元素,由org.apache.catalina.Server接口来定义。
它可以包含一个或多个<Service>元素,并且它不能作为任何元素的子元素。
(2) <Service>元素:一个“Service”是一个或多个共用一个单独“Container”(容器)的“Connectors”组合(因此,
应用程序在容器中可见)。通常,这个容器是一个“Engine”(引擎),但这不是必须的。该元素由org.apache.
.catalina.Service接口定义,它包含一个<Engine>元素,以及一个或多个<Connector>,这些Connector元素
共享用一个Engine元素。
(3) <Connector>元素:代表与客户程序实际交互的组件,它负责接收客户请求,以及向客户返回响应结果。
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
以上代码中,第一个connector元素定义了一个http connector,它通过8080端口接收http请求;
第二个connector元素定义了一个JD connector,它通过8009端口接收由其他服务器转发过来的请求。
(4) <engine>元素:每个service元素只能有一个engine元素。处理在同一个<Service>中所有<Connector>
元素接收到的客户请求。由org.apahce.catalina.Engine接口定义。一个“engine”(引擎)代表处理每个
请求的入口点。这个Tomcat的标准独立引擎实现分析包含在请求中的http头信息,并将请求传送到
适当主机或者虚拟主机上。
(5) <Host>元素:一个Engine元素可以包含多个<Host>元素,每个<Host>的元素定义了一个虚拟主机,它
包含了一个或多个web应用。
(6) <Context>元素:是使用最频繁的元素,每个<Context>元素代表了运行在虚拟机主机上的单个Web应用。
一个<Host>可以包含多个<Context>元素,每个web应用有唯一的一个相对应的Context。