Tomcat服务器的server.xml是Tomcat安装目录下conf文件夹中的核心配置文件,采用XML格式编写,主要用于定义Tomcat服务器的整体运行结构、网络监听端口、虚拟主机、Web应用部署规则等核心参数,是Tomcat启动和运行时读取的首要配置来源。

server.xml的基本定义与作用
server.xml是Tomcat全局配置的核心载体,Tomcat启动时会解析这个文件,根据其中的配置初始化各个服务组件。如果没有正确配置这个文件,Tomcat可能无法正常启动,或者无法按照预期的方式对外提供服务。
这个文件中的所有配置都遵循XML的语法规范,通过嵌套的标签结构来描述Tomcat的各个组件层级关系,从顶层的服务器实例到最底层的连接器、上下文容器都有对应的标签定义。
XML用于配置Web服务器的核心逻辑
XML本身是一种可扩展的标记语言,它的标签嵌套结构非常适合描述层级化的配置关系,而Web服务器的组件本身就是层级化的,因此XML天然适合作为Web服务器的配置格式。
XML配置Web服务器的基础语法要求
在server.xml中配置内容时,需要遵循XML的基本语法规则:
- 所有标签必须成对出现,要么有开始标签和结束标签,要么使用自闭合标签
- 标签的属性值必须用英文双引号包裹
- 标签必须正确嵌套,不能交叉嵌套
- 文件开头需要声明XML的版本和编码,server.xml的声明通常为<?xml version="1.0" encoding="UTF-8"?>
server.xml的核心组件结构
server.xml的组件是层级嵌套的,核心结构如下:
| 组件标签 | 作用说明 |
|---|---|
| <Server> | 代表整个Tomcat服务器实例,是配置文件的最顶层元素 |
| <Service> | 关联一个服务器和多个连接器,是服务的基本单元 |
| <Connector> | 配置网络连接器,定义Tomcat监听的端口、协议等参数 |
| <Engine> | 处理连接器接收到的请求,是请求处理的引擎 |
| <Host> | 代表一个虚拟主机,对应一个域名或者IP的访问配置 |
| <Context> | 代表一个Web应用的部署配置,对应具体的项目路径 |
常见的server.xml配置示例
修改默认监听端口
Tomcat默认使用8080端口作为HTTP连接器的监听端口,如果需要修改为其他端口,可以修改<Connector>标签的port属性:
<?xml version="1.0" encoding="UTF-8"?>
<Server port="8005" shutdown="SHUTDOWN">
<Service name="Catalina">
<!-- 修改HTTP连接器端口为9090 -->
<Connector port="9090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
</Service>
</Server>
配置虚拟主机
如果需要让Tomcat支持多个域名访问不同的项目,可以添加<Host>标签配置虚拟主机:
<Engine name="Catalina" defaultHost="localhost">
<!-- 默认虚拟主机 -->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
</Host>
<!-- 新增虚拟主机,域名为test.ipipp.com -->
<Host name="test.ipipp.com" appBase="testapps"
unpackWARs="true" autoDeploy="true">
<!-- 配置该虚拟主机的默认应用上下文 -->
<Context path="" docBase="/opt/tomcat/testapps/demo" reloadable="true" />
</Host>
</Engine>
配置Web应用上下文路径
如果需要自定义Web应用的访问路径,可以在<Host>标签内添加<Context>标签:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<!-- 配置项目访问路径为/myapp,对应webapps下的myapp目录 -->
<Context path="/myapp" docBase="myapp" reloadable="true" />
</Host>
配置注意事项
修改server.xml之后,需要重启Tomcat才能让配置生效。另外配置时要注意XML语法的正确性,如果出现标签未闭合、属性值未加引号等语法错误,Tomcat启动时会报错,无法正常解析配置文件。
如果需要在配置中添加注释,XML的注释格式是<!-- 注释内容 -->,注释不能嵌套在其他标签的内部属性中,只能放在标签的外部或者标签内容的区域。
Tomcatserver.xmlXMLWeb服务器配置修改时间:2026-07-12 18:21:26