`

tomcat server.xml的配置详解

阅读更多

 

tomcat server.xml 配置详解

 

元素名

属性

解释

server

port

指定一个端口,这个端口负责监听关闭 tomcat的请求

shutdown

指定向端口发送的命令字符串

service

name

指定 service的名字

Connector (表示客户端和 service之间的连接 )

port

指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求

minProcessors

服务器启动时创建的处理请求的线程数

maxProcessors

最大可以创建的处理请求的线程数

enableLookups

如果为 true,则可以通过调用 request.getRemoteHost()进行 DNS查询来得到远程客户端的实际主机名,若为 false则不进行 DNS查询,而是返回其 ip地址

redirectPort

指定服务器正在处理 http请求时收到了一个 SSL传输请求后重定向的端口号

acceptCount

指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理

connectionTimeout

指定超时的时间数 (以毫秒为单位 )

Engine (表示指定 service中的请求处理机,接收和处理来自 Connector的请求 )

defaultHost

指定缺省的处理请求的主机名,它至少与其中的一个 host元素的 name属性值是一样的

Context (表示一个 web应用程序,通常为 WAR文件,关于 WAR的具体信息见 servlet规范 )

docBase

应用程序的路径或者是 WAR文件存放的路径

path

表示此 web应用程序的 url的前缀,这样请求的 url http://localhost:8080/path/ ****

reloadable

这个属性非常重要,如果为 true,则 tomcat会自动检测应用程序的 /WEB-INF/lib /WEB-INF/classes目录的变化,自动装载新的应用程序,我们可以在不重起 tomcat的情况下改变应用程序

host (表示一个虚拟主机 )

name

指定主机名

appBase

应用程序基本目录,即存放应用程序的目录

unpackWARs

如果为 true,则 tomcat会自动将 WAR文件解压,否则不解压,直接从 WAR文件中运行应用程序

Logger (表示日志,调试和错误信息 )

className

指定 logger使用的类名,此类必须实现 org.apache.catalina.Logger 接口

prefix

指定 log文件的前缀

suffix

指定 log文件的后缀

timestamp

如果为 true,则 log文件名中要加入时间,如下例 :localhost_log.2001-10-04.txt

Realm (表示存放用户名,密码及 role的数据库 )

className

指定 Realm使用的类名,此类必须实现 org.apache.catalina.Realm接口

Valve (功能与 Logger差不多,其 prefix suffix属性解释和 Logger 中的一样 )

className

指定 Valve使用的类名,如用 org.apache.catalina.valves.AccessLogValve类可以记录应用程序的访问信息

directory

指定 log文件存放的位置

pattern

有两个值, common方式记录远程主机名或 ip地址,用户名,日期,第一行请求的字符串, HTTP响应代码,发送的字节数。 combined方式比 common方式记录的值更多

 

 

 

 

<Server> 元素


它代表整个容器 , Tomcat 实例的顶层元素 . org.apache.catalina.Server 接口来定义 . 它包含一个

<Service> 元素 . 并且它不能做为任何元素的子元素 .

 

< Server port ="8005" shutdown ="SHUTDOWN" debug ="0">


1>className
指定实现 org.apache.catalina.Server 接口的类 . 默认值为

org.apache.catalina.core.StandardServer
2>port
指定 Tomcat 监听 shutdown 命令端口 . 终止服务器运行时 , 必须在 Tomcat 服务器所在的机器上发出

shutdown 命令 . 该属性是必须的 .
3>shutdown
指定终止 Tomcat 服务器运行时 , 发给 Tomcat 服务器的 shutdown 监听端口的字符串 . 该属性必须设

<Service> 元素


该元素由 org.apache.catalina.Service 接口定义 , 它包含一个 <Engine> 元素 , 以及一个或多个

<Connector>, 这些 Connector 元素共享用同一个 Engine 元素
   

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


  
第一个 <Service> 处理所有直接由 Tomcat 服务器接收的 web 客户请求 .
  
第二个 <Service> 处理所有由 Apahce 服务器转发过来的 Web 客户请求
1>className
指定实现 org.apahce.catalina.Service 接口的类 . 默认为

org.apahce.catalina.core.StandardService
2>name
定义 Service 的名字

<Engine> 元素


每个 Service 元素只能有一个 Engine 元素 . 元素处理在同一个 <Service> 中所有 <Connector> 元素接收到的客

户请求 . org.apahce.catalina.Engine 接口定义 .

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

1>className 指定实现 Engine 接口的类 , 默认值为 StandardEngine
2>defaultHost
指定处理客户的默认主机名 , <Engine> 中的 <Host> 子元素中必须定义这一主机
3>name
定义 Engine 的名字
<Engine> 可以包含如下元素 <Logger>, <Realm>, <Value>, <Host>

<Host> 元素


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

包含了一个或多个 Web 应用 .

< Host name ="localhost" debug ="0" appBase ="webapps" unpackWARs ="true" autoDeploy ="true">

1>className 指定实现 Host 接口的类 . 默认值为 StandardHost
2>appBase
指定虚拟主机的目录 , 可以指定绝对目录 , 也可以指定相对于 <CATALINA_HOME> 的相对目录 . 如果

没有此项 , 默认为 <CATALINA_HOME>/webapps
3>autoDeploy
如果此项设为 true, 表示 Tomcat 服务处于运行状态时 , 能够监测 appBase 下的文件 , 如果有新有

web 应用加入进来 , 会自运发布这个 WEB 应用
4>unpackWARs
如果此项设置为 true, 表示把 WEB 应用的 WAR 文件先展开为开放目录结构后再运行 . 如果设为

false 将直接运行为 WAR 文件
5>alias
指定主机别名 , 可以指定多个别名
6>deployOnStartup
如果此项设为 true, 表示 Tomcat 服务器启动时会自动发布 appBase 目录下所有的 Web 应用

. 如果 Web 应用中的 server.xml 没有相应的 <Context> 元素 , 将采用 Tomcat 默认的 Context
7>name
定义虚拟主机的名字
<Host> 元素中可以包含如下子元素
<Logger>, <Realm>, <Value>, <Context>

<Context> 元素


它由 Context 接口定义 . 是使用最频繁的元素 . 每个 <Context 元素代表了运行在虚拟主机上的单个 Web 应用 .

一个 <Host> 可以包含多个 <Context> 元素 . 每个 web 应用有唯一
的一个相对应的 Context 代表 web 应用自身 .servlet 容器为第一个 web 应用创建一个
ServletContext
对象 .

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

1>className 指定实现 Context 的类 , 默认为 StandardContext
2>path
指定访问 Web 应用的 URL 入口 , 注意 /myweb, 而不是 myweb 了事
3>reloadable
如果这个属性设为 true, Tomcat 服务器在运行状态下会监视在 WEB-INF/classes Web-

INF/lib 目录 CLASS 文件的改运 . 如果监视到有 class 文件被更新 , 服务器自重新加载 Web 应用
3>cookies
指定是否通过 Cookies 来支持 Session, 默认值为 true
4>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 元素定

义了一个 JD Connector, 它通过 8009 端口接收由其它服务器转发过来的请求 .
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

 

========================================================================================

 

 

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

<Server port="8005" shutdown="SHUTDOWN" debug="0">

1> className 指定实现 org.apache.catalina.Server 接口的类 . 默认值为 org.apache.catalina.core.StandardServer
2> port 指定 Tomcat 监听 shutdown 命令端口 . 终止服务器运行时 , 必须在 Tomcat 服务器所在的机器上发出 shutdown 命令 . 该属性是必须的 .
3> shutdown 指定终止 Tomcat 服务器运行时 , 发给 Tomcat 服务器的 shutdown 监听端口的字符串 . 该属性必须设置

 

<Service> 元素
该元素由 org.apache.catalina.Service 接口定义 , 它包含一个 <Engine> 元素 , 以及一个或多个 <Connector>, 这些 Connector 元素共享用同一个 Engine 元素
   
    <Service name="Catalina">
    <Service name="Apache">
   
第一个 <Service> 处理所有直接由 Tomcat 服务器接收的 web 客户请求 .
   
第二个 <Service> 处理所有由 Apahce 服务器转发过来的 Web 客户请求

1> className 指定实现 org.apahce.catalina.Service 接口的类 . 默认为 org.apahce.catalina.core.StandardService
2> name 定义 Service 的名字

 

<Engine> 元素
每个 Service 元素只能有一个 Engine 元素 . 元素处理在同一个 <Service> 中所有 <Connector> 元素接收到的客户请求 . org.apahce.catalina.Engine 接口定义 .

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

1> className 指定实现 Engine 接口的类 , 默认值为 StandardEngine
2> defaultHost 指定处理客户的默认主机名 , <Engine> 中的 <Host> 子元素中必须定义这一主机
3> name 定义 Engine 的名字

<Engine> 可以包含如下元素 <Logger>, <Realm>, <Value>, <Host>

 

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

   <Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true">

1> className 指定实现 Host 接口的类 . 默认值为 StandardHost
2> appBase 指定虚拟主机的目录 , 可以指定绝对目录 , 也可以指定相对于 <CATALINA_HOME> 的相对目录 . 如果没有此项 , 默认为 <CATALINA_HOME>/webapps
3> autoDeploy 如果此项设为 true, 表示 Tomcat 服务处于运行状态时 , 能够监测 appBase 下的文件 , 如果有新有 web 应用加入进来 , 会自运发布这个 WEB 应用
4> unpackWARs 如果此项设置为 true, 表示把 WEB 应用的 WAR 文件先展开为开放目录结构后再运行 . 如果设为 false 将直接运行为 WAR 文件
5> alias 指定主机别名 , 可以指定多个别名
6> deployOnStartup 如果此项设为 true, 表示 Tomcat 服务器启动时会自动发布 appBase 目录下所有的 Web 应用 . 如果 Web 应用中的 server.xml 没有相应的 <Context> 元素 , 将采用 Tomcat 默认的 Context
7> name 定义虚拟主机的名字

<Host> 元素中可以包含如下子元素
<Logger>, <Realm>, <Value>, <Context>


<Context> 元素
它由 Context 接口定义 . 是使用最频繁的元素 . 每个 <Context 元素代表了运行在虚拟主机上的单个 Web 应用 . 一个 <Host> 可以包含多个 <Context> 元素 . 每个 web 应用有唯一
的一个相对应的 Context 代表 web 应用自身 .servlet 容器为第一个 web 应用创建一个
ServletContext
对象 .

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

1> className 指定实现 Context 的类 , 默认为 StandardContext
2> path 指定访问 Web 应用的 URL 入口 , 注意 /myweb, 而不是 myweb 了事
3> reloadable 如果这个属性设为 true, Tomcat 服务器在运行状态下会监视在 WEB-INF/classes Web-INF/lib 目录 CLASS 文件的改运 . 如果监视到有 class 文件被更新 , 服务器自重新加载 Web 应用
3> cookies 指定是否通过 Cookies 来支持 Session, 默认值为 true
4> 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 元素定义了一个 JD Connector, 它通过 8009 端口接收由其它服务器转发过来的请求 .

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配置详解

    在深入探讨Tomcat服务器的`server.xml`配置文件之前,我们先简要了解下Tomcat。Apache Tomcat是一个开源的Servlet容器,主要用来运行Java Servlet和JavaServer Pages(JSP)。`server.xml`是Tomcat的核心配置文件,...

    tomcatserver.xml配置详解.pdf

    根据提供的文件信息,可以看出文档内容是关于Tomcat服务器的配置文件server.xml的详细解读。server.xml是Tomcat中的核心配置文件,负责配置整个服务器的运行参数和连接器信息。下面将对Tomcat server.xml中可能包含...

    tomcat server.xml配置说明详解

    tomcat server.xml配置说

    tomcat_server.xml_配置详解

    《Tomcat Server.xml配置详解》 Tomcat作为流行的Java应用服务器,其核心配置文件`server.xml`对于理解和管理服务器的运行至关重要。本文将详细解析`server.xml`中的关键元素、属性及其含义,帮助读者深入理解...

    tomcat server.xml 配置

    ### Tomcat Server.xml 配置详解 #### 一、引言 在当今互联网技术领域,Apache Tomcat作为一款开源的应用服务器,在Java Web开发中扮演着举足轻重的角色。它支持运行Servlet和JSP,是Java Web应用部署的常用平台之...

    tomcat服务器的Server.xml配置详解.docx

    《Tomcat服务器的Server.xml配置详解》 Tomcat作为一款广泛应用的开源轻量级Web应用服务器,其核心配置文件Server.xml对于服务器的管理和优化至关重要。本文将深入解析Server.xml的结构和配置要素,帮助读者更好地...

    tomcat 配置文件 server.xml配置

    ### Tomcat Server.xml配置详解 在探讨`server.xml`配置文件之前,让我们先明确一点:`server.xml`是Apache Tomcat服务器的核心配置文件,它控制着Tomcat的启动、运行和停止过程。对于任何希望深入理解和优化Tomcat...

    Tomcat server.xml配置文件详解

    总之,`server.xml` 文件是 Tomcat 配置的核心,通过精细调整这些元素的属性,我们可以定制化 Tomcat 服务器的行为,以满足特定的应用场景需求。理解并熟练掌握 `server.xml` 的配置是优化和管理 Tomcat 服务器性能...

    tomcat6 server.xml 详解

    在Java Web开发中,Tomcat作为一款广泛应用的开源Servlet容器,其配置文件server.xml的重要性不言而喻。本文将深入探讨Tomcat6版本中的server.xml,揭示其中的核心配置元素,帮助开发者更好地理解和定制服务器环境。...

    tomcat中server.xml详解

    对server.xml的配置信息项进行详解

    tomcat-server.xml详解

    《Tomcat-server.xml配置详解》 Tomcat作为一款广泛应用的Java EE服务器,其核心配置文件`tomcat-server.xml`对于优化服务器性能、管理和监控服务至关重要。本文将详细解析`tomcat-server.xml`中的主要元素和属性,...

    tomcat_server.xml_配置详解.doc

    《深入解析Tomcat Server.xml配置文件》 在Java Web应用的开发与部署中,Apache Tomcat作为一款开源的Servlet容器,扮演着至关重要的角色。它的灵活性和可定制性,很大程度上依赖于`server.xml`配置文件。本文将对`...

    tomcat的server.xml标签全解析.

    【Tomcat的Server.xml配置详解】 Tomcat作为广泛使用的Java Servlet容器,其核心配置文件`server.xml`扮演着至关重要的角色。它定义了Tomcat服务器的结构和行为,包括Server、Service、Engine、Host和Context等组件...

    server.xml常用配置详解.docx

    ### server.xml常用配置详解 #### 一、整体格式与结构 `server.xml` 文件是 Tomcat 服务器的核心配置文件之一,主要用于控制 Tomcat 的运行。此外,在 JBoss 服务器中,其 Web 容器实际上是基于 Tomcat 的封装,...

    tomcatserver.xml详解.pdf

    根据提供的文件信息,内容涉及到Apache Tomcat的配置文件server.xml的详细解析。server.xml是Tomcat服务器的核心配置文件,它定义了Tomcat服务器的各种组件,如连接器(Connector)、服务(Service)、引擎(Engine...

    Tomcat 的 server.xml 文件详解

    ### Tomcat 的 server.xml 文件详解 #### 文件内容解读 `server.xml` 是 Apache Tomcat 服务器的核心配置文件之一,它定义了 Tomcat 的整体运行环境、连接器、服务、主机等核心组件。深入理解 `server.xml` 文件...

    Tomcat连接池配置方法详解 源代码 JSP context.xml

    如果不在MyEclipse等集成开发环境中使用内置的Tomcat,你需要确保Tomcat的`conf\Catalina\localhost`目录下没有`host-manager.xml`和`manager.xml`这两个文件,因为它们可能会覆盖自定义的`context.xml`配置。...

    Tomcat Web.xml 详解

    ### Tomcat Web.xml 详解 #### 一、概述 `web.xml` 文件是 Java Web 应用中的核心配置文件之一,它定义了应用程序的各种配置信息,包括但不限于 Servlet 的配置、过滤器(Filter)的配置、监听器(Listener)的...

    有关jsp+struts+hibernate+MSSQLServer项目中Tomcat5的server.xml配置

    根据提供的文件信息,本文将详细解释在JSP + Struts + Hibernate + MSSQLServer项目中配置Tomcat 5 的 `server.xml` 文件的关键步骤与重要设置。这些知识点将涵盖如何在Tomcat环境下顺利运行SQL Server数据库,以及...

Global site tag (gtag.js) - Google Analytics