本文是基于Tomcat 5.5 自带配置参考文档的学习笔记,文档路径为:
$CATALINA_HOME/webapps/tomcat-docs/config/index.html
由于本人英语水平有限,理解上难免存在偏差,如有错误的地方还望各位指正。
Server
Server元素代表了整个Catalina Servlet容器,它必须是 conf/server.xml 配置文件中的唯一最外层元素。它的属性描述了servlet容器的总体特征。
Server 元素中可以嵌入以下元素:
1) Service:一个或多个Service元素
2) GlobalNamingResources:配置Server的全局JNDI资源
Service
Service元素描述了用于侦听和处理请求的一个或多个Connector组件与一个唯一Engine组件的组合。在Service元素中只能嵌入一个或多个Connector元素,有且只有一个Engine元素跟在Connector元素的后面。
HTTP Connector
Connector元素根据支持的协议分为HTTP Connector 和 AJP Connector。
HTTP Connector 是支持 HTTP/1.1 协议的Connector。它让Catalina除了可以执行servlet 和JSP页面外,还可以作为一个独立的Web服务器运行。HTTP Connector侦听着服务器上特定TCP端口的连接。一个或多个HTTP Connector可以被配置到同一个Service里,并将连接转发到对应的那个唯一的Engine组件,以处理请求和创建响应。
在服务器启动的时候,Connector组件会根据配置预先创建一些请求处理线程。每个活动的请求将会占用一个线程,当预先创建的线程不够用时,在不超过最大限定的线程数的情况下,新线程会自动被创建;如果最大线程数仍不能满足请求的需要,那么新请求的连接将会被暂时挂起,等待处理中的请求完成释放出线程资源后才得以处理。如果请求连接的并发数超过允许的连接最大数,新的连接请求将会收到一个“connection refused拒绝连接”错误。
AJP Connector
AJP Connector是支持AJP协议的Connector。在集成Tomcat和Apache时使用,通常是利用Apache来处理静态内容,或者让Apache负责处理SSL协议。
AJP Connector可与Engine组件的jvmRoute 属性联合使用,实现负载均衡。
Engine
Engine是与Service关联的请求处理体系。它接收来自Connector的请求,并通过Connector将请求的响应结果传输回客户端。Engine只能唯一地跟在Connector后面作为Service的最后一个子元素出现。
Engine可用嵌入一个或多个Host元素,每个Host元素代表服务器上的一个虚拟主机。至少要有一个Host作为Engine的defaultHost。
Engine可以嵌入Realm元素,用于配置用户或角色对所有Host以及Host的下属Context的访问权限,也可以在Host和Context中定义Realm元素,以覆盖权限的配置。
Host
Host代表虚拟主机。可以通过别名的方式为虚拟主机指定多个不同的域名。一个或多个Host元素可以嵌入到Engine元素中。Host元素可以嵌入一个或多个Context元素,用于表示虚拟主机上的不同Web应用。至少要有一个Host最为Engine的defaultHost。
Host元素还可以嵌入Realm元素,用于配置用户或角色对Host的下属Context的访问权限,可以在Context中定义Realm元素,以覆盖权限的配置。
如果使用的是standard Host实现,并且deployOnStartup属性值为默认的true,那么在启动服务器的时候,以下内容将会被自动部署:
1) 每一个在 $CATALINA_HOME/conf/[engine_name]/[host_name] 目录下的XML文件将被认为是一个定义了web应用的context元素。Context元素的 docBase 属性就是WEB应用对应的目录或WAR文件的路径(这种情况下WAR文件不会被解压)。
2) 如果unpackWARs属性没有设置为false,那么所有在appBase目录下的war文件将会被自动解压。在更新WAR文件,需要将之前解压的生成的同名文件夹删除,重新启动tomcat
分享到:
相关推荐
【Tomcat7.0学习笔记】 Tomcat 7.0是Apache软件基金会的Jakarta项目下的一个开源Java Servlet容器,它实现了Java Servlet和JavaServer Pages(JSP)规范,为Web应用程序提供服务。本笔记主要涵盖了在Linux环境下...
【标题】:Tomcat学习笔记 【正文】: Tomcat是一款广泛应用的开源Web服务器和Java Servlet容器,由Apache软件基金会的Jakarta项目开发。它实现了Java Servlet和JavaServer Pages(JSP)规范,并且作为轻量级应用...
【Tomcat 学习精华笔记】 Tomcat 是一个广泛应用的开源服务器,主要用于托管Java Web应用程序。它虽然不是严格意义上的应用服务器,但作为一个Servlet容器,它能够处理Servlet和JSP,并且具备了一些应用服务器的...
### Tomcat 6 学习笔记 #### 一、Tomcat 6 平台搭建与配置 ##### 1. 下载与安装 Tomcat 6 是一个免费且开源的Servlet容器,由Apache软件基金会下的Jakarta项目开发。可以通过官方网站进行下载:...
### Tomcat 6 学习笔记 #### 一、Tomcat 6 平台搭建与配置 ##### 1. 下载与安装 Tomcat 6 是一个免费且开源的Servlet容器,由Apache软件基金会下的Jakarta项目开发。可以通过官方网站:...
《Tomcat学习笔记》 Tomcat是一款开源的Java Servlet容器,是Apache软件基金会下的Jakarta项目中的核心项目,主要用于运行Java Web应用程序。本笔记将详细阐述Tomcat的安装、配置、虚拟主机设置、JDBC数据库连接池...
### JSP与Tomcat配置详解 #### 一、Tomcat服务器配置 **1. 配置端口号** - **目的**: 更改Tomcat默认监听的HTTP端口8080,以便在本地环境中与其他服务更好地共存。 - **步骤**: - 打开`%TOMCAT_HOME%/conf/...
【标题】:Tomcat学习笔记 【描述】:Tomcat是一款广泛应用的开源Java Servlet容器...通过阅读"Tomcat学习笔记",读者可以系统地学习到如何安装、配置、管理和优化Tomcat,以及如何在Tomcat上部署和运行Java Web应用。
【如何使用Tomcat——学习笔记】 Tomcat是一款广泛使用的开源Java Servlet容器,它实现了Java EE的Web部分,包括Servlet和JSP规范。本教程将详细解释如何配置和使用Tomcat,以便于开发和测试Servlet应用。 1. **...
【标题】:“Web学习笔记——Tomcat” 在Web开发领域,Tomcat是一个广泛使用的Java Servlet容器,它实现了Java EE中的Web部分,特别是Servlet和JSP规范。Tomcat以其开源、轻量级和高效的特性,成为了许多小型项目和...
【Java学习笔记】这篇学习笔记主要涵盖了Java开发中的一些基础操作和配置,特别是使用Eclipse作为IDE,结合Tomcat服务器进行Servlet和JSP开发时的关键点。以下是对这些知识点的详细说明: 1. **Eclipse快捷键配置**...
- **Tomcat配置文档**:`tomcat配置.doc`可能包含了更详细的Tomcat配置信息,如虚拟主机设置、session配置、错误页面处理等,这些都是运行和管理Tomcat服务器时需要了解的关键知识点。 总之,理解并正确配置Tomcat...
二、Tomcat配置 1. `server.xml`详解 `server.xml`是Tomcat的主要配置文件,包含了Server、Service、Connector和Engine等元素的配置。例如: - `<Server>`:定义了整个Tomcat服务器。 - `<Service>`:定义了...
本文主要探讨了如何对Tomcat进行安全配置,特别是在Windows环境下。首先,我们强调了文件系统安全的重要性,特别是对于运行Tomcat的服务器来说,确保文件系统的安全是基础。 Windows文件系统主要有三种类型:FAT、...
【标题】"Tomcat学习笔记 - 使用JNDI数据源" 在Java应用服务器如Tomcat中,使用JNDI(Java Naming and Directory Interface)数据源是一种标准的方式,它允许我们集中管理和配置数据库连接,提高应用的可移植性和可...
### jBoss + Tomcat 学习笔记大全及帮助文档概览 #### 一、环境搭建与配置 在开始深入探讨jBoss与Tomcat的集成之前,我们先来了解如何搭建基本的开发环境。 ##### 1. Java 环境配置 - **安装 J2SDK1.4+ 和 J2...