tomcat中的context.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的前缀,这样请求的 urlhttp://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差不多,其 prefixsuffix属性解释和 Logger 中的一样 )
className
指定 Valve使用的类名,如用 org.apache.catalina.valves.AccessLogValve类可以记录应用程序的访问信息
directory
指定 log文件存放的位置
pattern
有两个值, common方式记录远程主机名或 ip地址,用户名,日期,第一行请求的字符串, HTTP响应代码,发送的字节数。 combined方式比 common方式记录的值更多






























































### 回答1: Tomcatcontext.xml文件是用来配置Web应用程序上下文的文件。它包含了一些重要的配置信息,如数据库连接、JNDI资源、安全性等。下面是一些常见的配置项: 1. 数据库连接:可以在context.xml中配置数据库连接池,以便在应用程序中使用。例如: <Context> <Resource name="jdbc/mydb" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="myuser" password="mypassword" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/mydb"/> </Context> 2. JNDI资源:可以在context.xml中配置JNDI资源,以便在应用程序中使用。例如: <Context> <Resource name="mail/Session" auth="Container" type="javax.mail.Session" mail.smtp.host="smtp.gmail.com" mail.smtp.port="587" mail.smtp.auth="true" mail.smtp.starttls.enable="true" username="myuser@gmail.com" password="mypassword"/> </Context> 3. 安全性:可以在context.xml中配置安全性相关的信息,如SSL证书、安全策略等。例如: <Context> <SSLHostConfig> <Certificate certificateKeystoreFile="/path/to/keystore" certificateKeystorePassword="mypassword"/> </SSLHostConfig> <SecurityConstraint> <web-resource-collection> <web-resource-name>Protected Area</web-resource-name> <url-pattern>/admin/*</url-pattern> </web-resource-collection> <auth-constraint> <role-name>admin</role-name> </auth-constraint> </SecurityConstraint> </Context> 总之,context.xml文件是一个非常重要的配置文件,它可以帮助我们配置Web应用程序的各种资源和安全性,使得我们的应用程序更加灵活和安全。 ### 回答2: Tomcat Context.xml 是 web 应用程序配置文件的主要配置文件之一,用于管理 Web 应用程序的上下文。它定义了一个特定 Web 应用程序的环境变量、上下文资源和各种参数设置。 Context.xml 文件通常保存在作为 web 应用程序的根目录下的 META-INF 目录下,并可以包含一系列指定参数和值的元素。下面是一些常见的 context.xml 配置选项和详解: 1. path:定义 Web 应用程序的上下文路径,该路径将被用于在浏览器中找到该应用程序。 例如,假设我们在 Tomcat 中安装了一个名为“myapp”的 web 应用程序,则该应用程序的 URL 将为:http://localhost:8080/myapp。 2. docBase:定义要部署的 Web 应用程序的文档根目录。 3. reloadable:指定 Tomcat 是否应该在 Web 应用程序代码或配置更改时重新加载应用程序。 4. crossContext:指定是否允许在多个 Web 应用程序之间共享 session。 5. jmxEnabled:使 Tomcat 使用 Java Management Extensions (JMX) API 标准的配置选项。 6. privileged:此选项是可选的,如果设置为 true,则 Tomcat 将使用当前线程的 Java 运行时,而不是使用一个新的线程。 7. resources:定义上下文资源,如数据库连接池和 JMS 队列管理器等。 在 context.xml 文件中,还可以使用以下元素: - Environment 元素:定义环境变量,如数据库登录和路径变量。 - Resource 元素:定义要公开的 JNDI 上下文资源(如 datasources、JMS connections 和 JavaMail sessions 等)。 - Manager 元素:指定会话管理器,可以配置会话 ID 超时值和其他相关属性。 - Listener 元素:提供 Web 应用程序生命周期事件,如 Context、ServletRequest 和 HttpSession 等。 总之,通过配置 context.xml 文件,我们可以对 Tomcat 中的 Web 应用程序进行更细粒度的管理和控制。而上述配置选项中的每一个都是非常重要的,具体的配置方案可以根据具体需求进行选择。 ### 回答3: Tomcat是一个开源的Java Servlet容器,用于将Java代码转换为可运行的服务器端Web应用程序。在Tomcat中,context.xml文件用于配置上下文的环境设置和资源参数。本文将详细介绍Tomcat context.xml的配置方法。 1. context.xml文件的位置 (1)对于整个Tomcat实例而言,context.xml文件位于Tomcat的conf目录中,即$CATALINA_BASE/conf。 (2)对于特定的Web应用程序而言,context.xml文件位于Web应用程序的META-INF目录下。 2. context.xml文件的结构 context.xml文件的根元素ContextContext元素有一个docBase属性,用于指定Web应用程序的根目录路径(相对路径或绝对路径)。Context元素中可以包含多个元素,比如Parameter、Resource、ResourceLink、Environment等。 3. Parameter元素 Parameter元素用于设置Web应用程序的初始化参数。它有两个属性:name和value。其中,name属性代表参数的名称,value属性代表参数的值。 例如,在context.xml文件中设置一个名为“dbUrl”的初始化参数: <Parameter name="dbUrl" value="jdbc:mysql://localhost:3306/test"/> 4. Resource元素 Resource元素用于配置Tomcat中的资源。例如,数据库连接池、JMS连接和JNDI对象等。Resource元素有多个属性,包括name、auth、type、url、username、password等。这些属性用于指定资源的名称、认证方式、类型、URL和访问权限等信息。 例如,在context.xml文件中设置一个名为“jdbc/TestDB”的JDBC数据源: <Resource name="jdbc/TestDB" auth="Container" type="javax.sql.DataSource" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" username="root" password="123456" maxTotal="20" maxIdle="10" maxWaitMillis="-1"/> 5. ResourceLink元素 ResourceLink元素用于将Web应用程序中定义的资源链接到Tomcat服务器上的资源。<Resource />元素定义了资源的位置,而<ResourceLink />元素定义了如何在Web应用程序中引用该资源。ResourceLink元素有两个属性:name和global。其中,name属性代表资源的名称,global属性代表是否在整个Tomcat实例中共享该资源。 例如,在context.xml文件中链接一个名为“jdbc/TestDB”的JDBC数据源: <ResourceLink name="jdbc/TestDB" global="jdbc/TestDB" type="javax.sql.DataSource"/> 6. Environment元素 Environment元素用于设置Web应用程序的环境变量。Environment元素有多个属性,包括name、value、type等。其中,name属性代表环境变量的名称,value属性代表环境变量的值,type属性代表环境变量的类型。 例如,在context.xml文件中设置一个名为“appVersion”的环境变量: <Environment name="appVersion" value="1.0.0" type="java.lang.String" /> 7. 直接在web.xml文件中设置资源参数 除了context.xml文件外,还可以在Web应用程序的web.xml文件中直接设置资源参数。这些参数将覆盖context.xml文件中的配置。在web.xml文件中,可以使用<env-entry>和<resource-env-ref>元素分别设置环境变量和资源参数。 例如,在web.xml文件中设置一个名为“dbUrl”的环境变量: <env-entry> <env-entry-name>dbUrl</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value>jdbc:mysql://localhost:3306/test</env-entry-value> </env-entry> 总之,context.xmlTomcat的一个重要配置文件,可以用于配置Web应用程序的初始化参数、资源、环境变量等信息。熟练掌握context.xml的配置方法,对于管理和运行Tomcat服务器上的Web应用程序非常重要。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值