阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Tomcat配置文件server.xml

144次阅读
没有评论

共计 3944 个字符,预计需要花费 10 分钟才能阅读完成。

Tomcat目录中的 server.xml 配置文件

server.xml称为主配置文件或全局配置文件

它完成以下两个目标:

1,提供 Tomcat 组件的初始化配置

2,说明 Tomcat 的结构和含义,使得 Tomcat 通过实例化组件完成启动及构建自身

 

代码解析如下:

 <Server port="8005" shutdown="SHUTDOWN">
      <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
      <Listener className="org.apache.catalina.core.JasperListener" />
      <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
      <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
      <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
      <GlobalNamingResources>
      <!-- 全局命名资源,来定义一些外部访问资源,其作用是为所有引擎应用程序所引用的外部资源的定义 --!>
        <Resource name="UserDatabase" auth="Container"
                  type="org.apache.catalina.UserDatabase"
                  description="User database that can be updated and saved"
                  factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
                  pathname="conf/tomcat-users.xml" />
      </GlobalNamingResources>
<!-- 定义的一个名叫“UserDatabase”的认证资源,将 conf/tomcat-users.xml 加载至内存中,在需要认证的时候到内存中进行认证 --> <Service name="Catalina">
<!-- # 定义 Service 组件,同来关联 Connector 和 Engine,一个 Engine 可以对应多个 Connector,每个 Service 中只能一个 Engine --!> <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <!-- 修改 HTTP/1.1 的 Connector 监听端口为 8080. 客户端通过浏览器访问的请求,只能通过 HTTP 传递给 tomcat。--> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> <Engine name="Catalina" defaultHost="localhost"> <!-- 修改当前 Engine,默认主机是 localhost -->
<Realm className="org.apache.catalina.realm.LockOutRealm"> <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"/> </Realm> <-- Realm 组件,定义对当前容器内的应用程序访问的认证,通过外部资源 UserDatabase 进行认证 --> <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true"> <!-- 定义一个主机,域名为:localhost,应用程序的目录是 webapps,设置自动部署,自动解压 --> <Context path=""docBase=""/usr/local/tomcat/webfile"" reloadable="true" /> <!-- 定义该应用程序,访问路径 "“,并且当该应用程序下 web.xml 或者类等有相关变化时,自动重载当前配置,即不用重启 tomcat 使部署的新应用程序生效 --> <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" prefix="localhost_access_log" suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" /> <!-- 定义一个 Valve 组件,用来记录 tomcat 的访问日志,日志存放目录为:logs 如果定义为相对路径则是相当于 $CATALINA_HOME,
并非相对于 appBase,
这个要注意。定义日志文件前缀为 localhost_access_log 并以.txt 结尾,pattern 定义日志内容格式,具体字段表示可以查看 tomcat 官方文档 --> </Host> </Engine> </Service> </Server>

标签功能如下:

server 标签:根元素,它代表整个容器 ,Tomcat实例的顶层元素 .org.apache.catalina.Server接口来定义 . 它包含一个 <Service> 元素 . 并且它不能做为任何元素的子元素.(其直接子元素有 3 个)

Listener 标签:监听器,用来管理 Tomcat 生命周期和全局资源

GlobalNamingResources 标签:配置系统的 JNDI

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

Connector 标签:连接器,代表外部客户之间的接口,将在一个指定的接口上侦听客户请求,将请求给 Engine 进行处理Connector 之间的 port 不能重复,否则会报 JVM BIND  端口号冲突的问题

Enger 标签 :引擎, 每个 Service 元素只能有一个 Engine 元素 . 元素处理在同一个 <Service> 中所有 <Connector> 元素接收到的客户请求 .org.apahce.catalina.Engine接口定义 . 处理 server 中所有的客户请求(其直接子元素 3 个)

Realm标签 定义对当前容器内的应用程序访问的认证,通过外部资源 UserDatabase 进行认证

Logger标签

Host标签 它由 Host 接口定义 . 一个 Engine 元素可以包含多个 <Host> 元素 . 每个 <Host> 的元素定义了一个虚拟主机 . 它包含了一个或多个 Web 应用 . 虚拟主机处理一个特定的主机请求(其直接子元素 2 个)

Logger标签:日志和错误信息

Context标签 :web 应用组, 它由 Context 接口定义 . 是使用最频繁的元素 . 每个 <Context 元素代表了运行在虚拟主机上的单个 Web应用 . 一个 <Host> 可以包含多个 <Context> 元素 . 每个 web 应用有唯一的一个相对应的 Context 代表 web 应用自身 .servlet 容器为第一个 web 应用创建一个 ServletContext 对象 . 当一个 web 应用被初始化时,它将用自己的 classLoader 对象载入”web.xml“中定义的每个 Servlet 类。<Context> 元素中可以包含如下元素<Logger>, <Realm>, <Resource>, <ResourceParams>

更多 Tomcat 相关教程见以下内容

CentOS 6.6 下安装配置 Tomcat 环境  http://www.linuxidc.com/Linux/2015-08/122234.htm

RedHat Linux 5.5 安装 JDK+Tomcat 并部署 Java 项目  http://www.linuxidc.com/Linux/2015-02/113528.htm 

Tomcat 权威指南(第二版)(中英高清 PDF 版 + 带书签)  http://www.linuxidc.com/Linux/2015-02/113062.htm 

Tomcat 安全配置与性能优化 http://www.linuxidc.com/Linux/2015-02/113060.htm 

Linux 下使用 Xshell 查看 Tomcat 实时日志中文乱码解决方案 http://www.linuxidc.com/Linux/2015-01/112395.htm 

CentOS 64-bit 下安装 JDK 和 Tomcat 并设置 Tomcat 开机启动操作步骤 http://www.linuxidc.com/Linux/2015-01/111485.htm 

CentOS 6.5 下安装 Tomcat  http://www.linuxidc.com/Linux/2015-01/111415.htm 

Tomcat 的详细介绍:请点这里
Tomcat 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-05/131650.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3944字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中