Tomcat之server.xml配置详解

原创 2013年12月05日 11:36:15

<Server>元素

它代表整个容器,是Tomcat实例的顶层元素。由org.apache.catalina.Server接口来定义。它包含一个<Service>元素。并且它不能做为任何元素的子元素。

  • <Server port="8005" shutdown="SHUTDOWN">
  • Server的实现类为org.apache.catalina.core.StandardServer,该类是利用org.apache.catalina.ServerFactory工厂创建的,里面采用了单例模式。
  • Port指定Tomcat监听shutdown命令端口。终止服务器运行时,必须在Tomcat服务器所在的机器上发出shutdown命令。该属性是必须的。
  • shutdown指定终止Tomcat服务器时,发给Tomcat服务器的shutdown监听端口的字符串,该属性必须设置。


<Service>元素

该元素由org.apache.catalina.Service接口定义,它包含一个<Engine>元素,以及一个或多个<Connector>,这些Connector元素共享用同一个Engine元素

<Service name="Catalina"><Service name="Apache">

第一个<Service>处理所有直接由Tomcat服务器接收的web客户请求。

第二个<Service>处理所有由Apache服务器转发过来的Web客户请求。

Service接口类的实现元素为:org.apache.catalina.core.StandardService

name定义Service的名字

<Engine>元素

每个Service元素只能有一个Engine元素。元素处理在同一个<Service>中所有<Connector>元素接收到的客户请求。由org.apache.catalina.Engine接口定义,该接口的实现类为org.apache.catalina.core.StandardEngine。

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

  • defaultHost指定处理客户请求的默认主机名,在<Engine>中的<Host>子元素中必须定义这一主机
  • name定义Engine的名字
  • 在<Engine>可以包含如下元素<Logger>、<Realm>、<Value>、<Host>

<Host>元素

它由Host接口定义。一个Engine元素可以包含多个<Host>元素。每个<Host>的元素定义了一个虚拟主机。它包含了一个或多个web应用。

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">

  • Host接口的实现类为StandardHost。
  • appBase指定虚拟主机的目录,可以指定绝对目录,也可以指定相对于<CATALINA_HOME>的相对目录。如果没有此项,默认为<CATALINA_HOME>/webapps。
  • autoDeploy如果此项为true,表示tomcat服务处于运行状态时,能够检测appBase下的文件,如果有新的web应用加入进来,会自动发布这个WEB应用。
  • unpackWARs如果此项设置为true,表示把WEB应用的WAR文件先展开为开放目录结构后再运行。如果设置为false将直接运行WAR文件。

<Context元素>

它由Context接口定义。是使用最频繁的元素。每个<Context>元素代表了运行在虚拟主机上的单个web应用。一个<Host>可以包含多个<Context>元素。每个web应用有唯一的一个相对应的Context代表web应用自身。

<Context path="/sample" docBase="Sample" debug="0" reloadable="true">

  • Context接口的实现类为StandardContext类。
  • path指定访问Web应用的URL入口,注意/myweb,而不是myweb。
  • reloadable如果这个属性设为true,Tomcat服务器在运行状态下会监视在WEB-INF/classes和Web-INF/lib目录Class文件的改变。如果监视到class文件被更新,服务器会重新加载Web应用。
  • cookies指定是否通过Cookies来支持Session,默认值为true。
  • useNaming指定是否支持JNDI,默认值为true。
  • 在<Context>元素中可以包含如下元素<Logger>、<Realm>、<Resource>、<ResourceParams>

<Connector>元素

由Connector接口定义。<Connector>元素代表与客户程序实际交互的组件,它负责接收客户请求,以及向客户返回响应结果。

<Connector port="8080" maxThread="50" minSpareThreads="25" maxSpareThread="75"
enableLookups
="false" redirectPort="8443" acceptCount="100" debug="0"
connectionTimeout
="20000" disableUploadTimeout="true" />
<Connection port="8009" enableLookups="false" redirectPort="8443" debug="0"
protocol
="AJP/1.3" />

第一个Connector元素定义了一个HTTP Connector,它通过8080端口接收HTTP请求;第二个Connector元素定义了一个AJP Connector,它通过8090端口接收其它服务器转发过来的请求。

Connector元素共用属性
1>className指定实现Connector接口的类
2>enableLookups如果设为true,表示支持域名解析,可以把IP地址解析为主机名.WEB应用中调用

request.getRemoteHost方法返回客户机主机名.默认值为true
3>redirectPort指定转发端口.如果当前端口只支持non-SSL请求,在需要安全通信的场命,将把客户请求转
发至SSL的redirectPort端口
HttpConnector元素的属性
1>className实现Connector的类
2>port设定Tcp/IP端口,默认值为8080,如果把8080改成80,则只要输入http://localhost即可
因为TCP/IP的默认端口是80
3>address如果服务器有二个以上ip地址,此属性可以设定端口监听的ip地址.默认情况下,端口会监听服务
器上所有的ip地址
4>bufferSize设定由端口创建的输入流的缓存大小.默认值为2048byte
5>protocol设定Http协议,默认值为HTTP/1.1
6>maxThreads设定在监听端口的线程的最大数目,这个值也决定了服务器可以同时响应客户请求的最大数
目.默认值为200
7>acceptCount设定在监听端口队列的最大客户请求数量,默认值为10.如果队列已满,客户必须等待.
8>connectionTimeout定义建立客户连接超时的时间.如果为-1,表示不限制建立客户连接的时间
JkConnector的属性
1>className实现Connector的类
2>port设定AJP端口号
3>protocol必须设定为AJP/1.3






tomcat配置文件server.xml详解

转自:http://grass51.blog.51cto.com/4356355/1123400 1、了解tomcat Tomcat不是一个完整意义上的Jave EE(j2ee)服务器,因...
  • lirui874125
  • lirui874125
  • 2016年10月13日 10:08
  • 3912

Tomcat中server.xml配置及Context的配置直接引用工程

转载http://panfuy.iteye.com/blog/1224665 server.xml配置简介          下面是这个文件中的基本配置信息,更具体的配置信息见tomcat的文...
  • u013559730
  • u013559730
  • 2014年02月10日 11:38
  • 2219

tomcat之server.xml配置说明,tomcat端口说明

使用tomcat有几年了,只知道修改tomcat端口,但是并没有深入的去了解tomcat端口的实际意义。 在网上找了相关资料,深入了解了下各个端口的实际意义,具体如下注释说明 ...
  • fengspg
  • fengspg
  • 2014年12月12日 15:55
  • 5080

tomcat server.xml配置详解

  • 2012年05月07日 10:39
  • 81KB
  • 下载

tomcat server.xml配置详解

转自:http://dcbjavaeye.iteye.com/blog/254193   元素名 属性 解释 server ...
  • liuyuhua0066
  • liuyuhua0066
  • 2011年08月26日 15:09
  • 498

【Tomcat】关于Server.xml配置详解

在Tomcat的安装目录下,有个Server.xml很重要。如果想修改服务器的访问端口则可以修改port Connector port="8080" protocol="HTTP/1.1" ...
  • XGsilence
  • XGsilence
  • 2018年01月10日 14:57
  • 28

tomcat的server.xml配置文件详解

今天同事在linux上准备开两个tomcat,于是他修改了端口以后,又修改了tomcat中server.xml中的redirectPort="8444" 导致启动2个tomcat失败 ,到此 我们来了...
  • chl191623691
  • chl191623691
  • 2017年11月02日 13:56
  • 76

Tomcat6设置虚拟目录及server.xml配置详解

小心ChinaPrj.cn   C# 正则表达式一 【转】 Tomcat6设置虚拟目录及server.xml配置详解   2010-11-25 15:21:29|  分类: 技术 |  ...
  • liu22985342
  • liu22985342
  • 2014年02月07日 09:52
  • 607

转-Tomcat6设置虚拟目录及server.xml配置详解

概念: 虚拟主机     虚拟目录 Tomcat是流行的JSP服务器,正如ASP中需要使用IIS一样,在编辑的JSp页面部署时需要一个服务器,Tomcat正是常用的首选服务器。网上 下载的程...
  • lwljava
  • lwljava
  • 2015年03月26日 09:13
  • 361

tomcat中server.xml配置详解

Tomcat Server的结构图如下: 该文件描述了如何启动Tomcat Server
  • zcyhappy1314
  • zcyhappy1314
  • 2014年02月11日 10:57
  • 5899
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Tomcat之server.xml配置详解
举报原因:
原因补充:

(最多只允许输入30个字)