Tomcat的配置文件service.xml

本文详细介绍了Tomcat的配置文件,特别是service.xml。service.xml中包含了Connector配置,如端口号、最大线程数等,以及Context配置,如路径、可重载等。了解这些配置有助于更好地管理和优化Tomcat服务器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

对于使用tomcat来说,配置是必不可少的,也是使用tomcat的基础,更是以后进行tomcat相关优化的必要途径

tomcat的所有配置文件都在tomcat的conf目录下,有以下配置文件:

目录

一、每个配置文件的说明:

二、service.xml


一、每个配置文件的说明:

1. catalina.policy 

包含由java Security Manager 实现的安全策略声明.它替换了安装java时带有的java.policy文件.这个文件用来防止欺骗代码或JSPs执行带有像System.exit(0)这样的命令的可能影响容器的破坏性代码. 只有当Tomcat用-security命令行参数启动时这个文件才会被使用. 

2. catalina.properties 

包含不能被像 java.* 或 org.apache.tomcat.*这样的servlets或jsps中的可执行java代码覆盖的java包的列表,这种覆盖可能成为安全隐患.还支持查找通用jars的设置 

3. context.xml 

这个通用context.xml可被所有的web应用程序使用.这个文件默认地可以设置到何处访问各web应用程序中的web.xml文件. 

    4.jaspic-providers.xml

        官方介绍: Tomcat实现了JASPIC 1.1维护版本B(JSR 196)。该实现主要用于实现第三方JASPIC身份验证实现与Tomcat的集成。 JASPIC可以由应用程序动态配置,也可以通过$CATALINA_BASE/conf/jaspic-providers.xml配置文件静态配置。如果存在, JASPIC配置将覆盖任何 <login-config>存在的web.xml

apache官方文档:http://tomcat.apache.org/tomcat-8.5-doc/config/jaspic.html

5. logging.properties 

JULI记录器使用默认日志配置. 它默认地使用ConsoleHandler和fileHandler设置应用程序 或者程序包的日志级别. 

6. sever.xml 

tomcat的主要配置文件. 解析器用这个文件在启动时根据规范"创建"容器 

7. tomcat-users.xml 

用于访问tomcat管理应用程序时的安全性设置. 用server.xml中引用的默认的用户数据库域(UserDatabase Realm)使用它. 所有的凭据都是默认被注释的. 

8.web.xml

它主要用来配置 Servlet、Filter 以及 Listener 等组件,以供 Web 容器(即 Tomcat)部署和执行 Web 应用。启动一个 Web 应用时,Tomcat 会首先读取它的 web.xml 配置文件

二、service.xml

配置文件的内容大致结构:

<Server port="8005" shutdown="SHUTDOWN"> <!--可包含一个或多个<Service>元素.-->
    <Service name="Catalina"> <!--需要不同端口部署不同应用时可配置多个Service --> 
        <Connector>
        .
        .
        .
        <Engine> <!--每个Service元素只能包含一个Engine元素--> 
            ...
            <Host>
                <!--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" />
                
                <!--同一端口部署多个应用则复制多个Context-->
                <Context path="" docBase="" debug="0" reloadable="true"/> 
                ...
            </Host>
        </Engine>
    </Service>
</Server>

使用tomcat部署项目时关于service.xml的配置:

  • 配置Connector 。tomcat中的Connector:
    <!--只要将8080改为自己需要的端口号即可,线上常配置为80,bio连接-->
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

    <!--  引用线程池的连接,如果使用,需要配置线程池
    <Connector executor="tomcatThreadPool"
               port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    -->

    <!--  线程池配置
    <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
        maxThreads="600" minSpareThreads="10"/>
    -->


    <!-- nio的连接方式
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="conf/localhost-rsa.jks"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>
    -->

    <!--  apr的连接方式
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
               maxThreads="150" SSLEnabled="true" >
        <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
        <SSLHostConfig>
            <Certificate certificateKeyFile="conf/localhost-rsa-key.pem"
                         certificateFile="conf/localhost-rsa-cert.pem"
                         certificateChainFile="conf/localhost-rsa-chain.pem"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>
    -->
    
    <!--ajp-->
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

    connector的常用参数:

prot :设定端口号,默认为8080.
protocol :设定HTTP协议,默认值为HTTP/1.1.
maxThreads:设定处理客户请求的线程的最大数目,,默认值为200.
acceptCount :设定在监听端口队列中的最大客户请求数,默认值为10.     如果队列已满,客户请求将被拒绝.
connectionTimeout :定义建立客户连接超时的时间,以毫秒为单位.如果设置为-1,表示不限制建立客户连接的时间.

更多connector的参数,参考官方文档:https://tomcat.apache.org/tomcat-8.0-doc/config/http.html

  • 配置context

<Context     path=""     docBase=""     debug="0"     reloadable="true">      

参数:
path  :指定访问该Web应用的URL入口.
docBase  :指定Web应用的文件路径.可以给定绝对路径,也可以给定相对于HostappBase属性的相对路径. 如果Web应用采用开放目录结构,那就指定Web应用的根目录;如果Web应用是个WAR文件,那就指定WAR文件的路径.
reloadable  :如果这个属性设为true,Tomcat服务器在运行状态下会监视在WEB-INF/class和WEB-INF/lib目录下CLASS文件的改动.如果检测到有calss文件被更新,服务器会自动重新加载Web应用.

在<Context>元素中可以包含如下的子元素:
        <Logger>
        <Realm>
        <Valve>
        <Resource>
        <ResourceParams>

 

引用来源:

好的,我可以为您解释一下 Tomcat 配置文件 server.xml 的详细内容。 Tomcat 的 server.xml 是一个核心配置文件,它用于配置 Tomcat 服务器的基本设置和各种连接器。以下是 server.xml 文件的一些主要配置内容: 1. Server 元素:定义 Tomcat 服务器的全局设置,如 HTTP 端口、AJP 端口、最大线程数等。 2. Service 元素:定义 Tomcat 服务器中的服务,一个 Tomcat 可以有多个服务,每个服务可以包含多个连接器。 3. Connector 元素:定义 Tomcat 服务器中的连接器,包括 HTTP 连接器、AJP 连接器等。通过配置该元素可以指定连接器的端口、协议、编码等相关属性。 4. Engine 元素:定义 Tomcat 服务器中的引擎,一个 Tomcat 可以包含多个引擎,每个引擎可以包含多个虚拟主机。 5. Host 元素:定义 Tomcat 服务器中的虚拟主机,通过该元素可以配置虚拟主机的别名、主机名、应用程序等相关属性。 6. Context 元素:定义 Tomcat 服务器中的 Web 应用程序,通过该元素可以配置 Web 应用程序的部署路径、上下文路径、会话管理等相关属性。 除了上述主要元素外,server.xml 文件还包含一些其他配置内容,如 Realm 元素、Valve 元素、Listener 元素等,这些元素用于配置 Tomcat 服务器的一些扩展功能,如身份验证、日志记录、监听器等。 需要注意的是,修改 server.xml 文件可能会对 Tomcat 服务器的稳定性和安全性产生影响,因此在进行修改前应该备份该文件,并确保了解所做更改的影响。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值