Tomcat之配置文件详解

Tomcat 目录

安装好 Tomcat 后,打开它的文件夹,可以看到以下目录

bin:存放各种启动、关闭和其它程序的脚本

conf:配置文件及相关数据文件存放的目录

lib:Tomcat 使用的库文件存放的目录,如存放 Servlet 规范的 API

logs:默认日志文件存放的目录,如存放访问日志

temp:临时文件的工作目录,如上传大文件时的缓存数据会存储在这里

webapps:存放 web 应用、用来程序部署的目录

work:Tomcat 的工作目录,如存放 JSP 编译后的类文件

配置文件

catalina.policy:Java 的安全策略配置文件,用于配置访问 codebase(代码库)或某些 Java 类的权限

catalina.properties:Java 属性定义文件,设定类加载器路径、安全包列表和一些调整性能的参数信息

context.xml:为部署与此 Tomcat 实例上的 web 应用程序提供的默认配置文件

logging.properties:定义日志相关的配置信息,如日志级别、文件路径等

server.xml:Tomcat 核心配置文件

tomcat-users.xml:包含 Realm 认证时用到的相关角色、用户和密码等信息

web.xml:为部署与 Tomcat 实例上的所有 web 应用程序提供部署描述符

server.xml 详解

        Server是server.xml的根元素,用于创建一个Server实例,默认使用的实现类是 org.apache.catalina.core.StandardServer

标签属性和子元素

        port:Tomcat 监听的关闭服务器的端口。

        shutdown:关闭服务器的指令字符串。

        Server内嵌的子元素为 Listener、GlobalNamingResources、Service。

Listener

VersionLoggerListener:用于以日志形式输出服务器 、操作系统、JVM的版本信息
AprLifecycleListener:用于加载(服务器启动) 和 销毁 (服务器停止) APR。 如果找不到APR库, 则会输出日志, 并不影响Tomcat启动
JreMemoryLeakPreventionListener:用于避免JRE内存泄漏问题
GlobalResourcesLifecycleListener:用户加载(服务器启动) 和 销毁(服务器停止) 全局命名服务
ThreadLocalLeakPreventionListener:用于在Context停止时重建Executor 池中的线程, 以避免ThreadLocal 相关的内存泄漏

GlobalNamingResources

 可编辑的用户数据库,UserDatabaseRealm也可以使用该数据库对用户进行身份验证

Service

 默认情况下,Tomcat 仅指定了Service 的名称, 值为 “Catalina”。Service 可以内嵌的元素为 : Listener、Executor、Connector、Engine,其中 : Listener 用于为Service添加生命周期监听器, Executor 用于配置Service 共享线程池,Connector 用于配置Service 包含的链接器, Engine 用于配置Service中链接器对应的Servlet 容器引擎。一个Server服务器,可以包含多个Service服务

tomcat-users.xml 详解

        该配置文件中,主要配置的是Tomcat的用户,角色等信息,用来控制Tomcat中 host-manager、manager的访问权限

        tomcat:用于控制页面访问权限。

        roles1:用于控制以简单文本的形式进行访问

web.xml 详解

web.xml 是web应用的描述文件, 它支持的元素及属性来自于Servlet 规范定义

ServletContext初始化参数
<context‐param><param‐name>contextConfigLocation</param‐name><param‐value>classpath:applicationContext‐*.xml</param‐value><description>Spring Config File Location</description>
</context‐param>
  • param‐name:初始化参数名称。
  • param‐value:初始化参数的值。
  • description:这个参数的描述信息
会话配置

用于配置Web应用会话,包括 超时时间、Cookie配置以及会话追踪模式。它将覆盖server.xml 和 context.xml 中的配置

<session-config><session-timeout>30</session‐timeout><cookie-config><name>JESSIONID</name><domain>www.baidu.cn</domain><path>/</path><comment>Session Cookie</comment><http-only>true</http‐only><secure>false</secure><max-age>3600</max‐age></cookie‐config><tracking-mode>COOKIE</tracking‐mode>
</session‐config>
Servlet配置
<servlet><servlet-name>myServlet</servlet‐name><servlet-class>com.caochenlei.MyServlet</servlet‐class><init-param><param-name>fileName</param‐name><param-value>init.conf</param‐value></init‐param><load-on-startup>1</load‐on‐startup><enabled>true</enabled>
</servlet>
<servlet-mapping><servlet-name>myServlet</servlet‐name><url-pattern>*.do</url‐pattern><url-pattern>/myservet/*</url‐pattern>
</servlet‐mapping>
Listener配置

Listener用于监听servlet中的事件

<listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener‐class>
</listener>
Filter配置

filter 用于配置web应用过滤器, 用来过滤资源请求及响应。 经常用于认证、日志、加密、数据转换等操作

<filter><filter-name>myFilter</filter‐name><filter-class>com.caochenlei.MyFilter</filter‐class><async-supported>true</async‐supported><init-param><param-name>language</param‐name><param-value>CN</param‐value></init‐param>
</filter>
<filter-mapping><filter-name>myFilter</filter‐name><url-pattern>/*</url‐pattern>
</filter‐mapping>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/436.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《生活教育》期刊简介及投稿邮箱

《生活教育》期刊简介及投稿邮箱 《生活教育》杂志创办于1934&#xff0c;是中华人民共和国教育部主管的国家重点学术期刊&#xff0c;国家级期刊&#xff0c;中国知网全文收录G4期刊&#xff0c;它的理论是陶行知教育思想的主线和重要基石&#xff0c;陶行知的教育理论&#…

基于单片机的老人防摔倒的设计与实现

功能介绍 以51单片机作为主控系统&#xff1b;通过LCD1602液晶显示屏显示当前的经纬度及时间的信息&#xff1b;温度传感器采集当前体温&#xff1b;通过GPS接收模块获得当前位置的位置的经度、纬度、时间和高度等信息&#xff1b;通过ADXL345检测老人摔倒的一瞬间重力加速度通…

面试题更新之-vue2x监听方面有什么缺点?所以才有了vue3.0

文章目录 vue2x监听vue3.0监听vue2x监听方面有什么缺点&#xff1f;所以才有了vue3.0 vue2x监听 在Vue.js 2.x中&#xff0c;你可以通过监听属性来响应数据的变化。以下是几种常见的监听方式&#xff1a; 监听计算属性&#xff1a;你可以使用computed属性来创建一个计算属性&…

排序算法第二辑——选择排序

一&#xff0c;选择排序 选择排序算是简单排序中的渣渣&#xff0c;这种算法基本上是没有什么用处的。但是作为一个初学者&#xff0c;我又必须要会写这种算法。这种算法的实现实现思想和它的名字一样&#xff0c;就是在一个范围内选择最大或者最小的数据然后再交换数据实现排序…

Maynor的博客专家成长之路——暨2023年中复盘

文章目录 博客专家成长之路——暨2023年中复盘前言念念不忘的博客专家每天只做三件事敲代码写博客健健身 我的感悟 不足之处未来&#xff1a;和CSDN共同成长最后 博客专家成长之路——暨2023年中复盘 前言 ​ 2023年不知不觉已经过去了半年有余&#xff0c;也是时候作年中复盘…

10.25UEC++/小试牛刀(笨鸟先飞案例)

1.思路整理&#xff1a; 如何入手&#xff1f; 角色可能是每个游戏的最重要的部分&#xff0c;所以一般可以先从角色入手&#xff0c;如果游戏很复杂&#xff0c;可以进行拆分设计。 蓝图创建地图&#xff1a; 创建默认Pawn&#xff1a; 编写GameMode默认构造函数&#xff1a;…

Springboot整合Activiti详解

文章目录 版本依赖配置文件需要注意的问题画流程图activiti服务类进行编写流程部署流程定义启动流程流程实例 测试流程启动流程完成任务受理任务 版本依赖 开发工具 IDEASpringBoot 2.4.5&#xff08;这里我试过SpringBoot 3.1.1版本&#xff0c;Activiti没有启动&#xff0c;…

Nginx-负载均衡

文章目录 nginx 负载均衡负载均衡策略&#xff08;方法、算法&#xff09;nginx配置round-robin加权轮询least-connectedip-hasp使用Https realip后端real server不使用realip模块后端real server使用realip模块 ab压力测试不同负载四层负载 7层负载4层和7层 nginx 负载均衡 负…

银河麒麟系统无法进入桌面拷贝备份文件

最近使用VMWare搭建银河麒麟系统升级后&#xff0c;无法进入桌面&#xff0c;而是进入tty1界面 这个时候如何想导出里面的文件就可以用文件共享的方式右键到虚拟机设置-选项&#xff0c;如图所示 选择一个共享目录 如d盘vm目录 登录tty1账号密码 ls列出文件 如图进行文件拷贝…

如何优雅的将 Docker 镜像从 1.43G 瘦身到 22.4MB

Docker 镜像的大小对于系统的 CI/CD 等都有影响&#xff0c;尤其是云部署场景。我们在生产实践中都会做瘦身的操作&#xff0c;尽最大的可能使用 Size 小的镜像完成功能。下文是一个简单的 ReactJS 程序上线的瘦身体验&#xff0c;希望可以帮助大家找到镜像瘦身的方向和灵感。 …

Python 列表 extend()函数使用详解

「作者主页」&#xff1a;士别三日wyx 「作者简介」&#xff1a;CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」&#xff1a;小白零基础《Python入门到精通》 extend函数使用详解 1、可以接收的参数1.1、添加字符串1.2、添加元组1.3、添加字…

【动手学深度学习】pytorch-参数管理

pytorch-参数管理 概述 我们的目标是找到使损失函数最小化的模型参数值。 经过训练后&#xff0c;我们将需要使用这些参数来做出未来的预测。 此外&#xff0c;有时我们希望提取参数&#xff0c;以便在其他环境中复用它们&#xff0c; 将模型保存下来&#xff0c;以便它可以在…

【USRP X410】LabVIEW参考架构软件,用于使用Ettus USRP X410对无线系统进行原型验证

LabVIEW参考架构软件&#xff0c;用于使用Ettus USRP X410对无线系统进行原型验证 设备 1 MHz to 7.2 GHz&#xff0c;400 MHz带宽&#xff0c;GPS驯服OCXO&#xff0c;USRP软件无线电设备 - Ettus USRP X410集成硬件和软件&#xff0c;可帮助您制作高性能无线系统的原型&…

500万PV的网站需要多少台服务器?

1. 衡量业务量的指标 衡量业务量的指标项有很多&#xff0c;比如&#xff0c;常见Web类应用中的PV、UV、IP。而比较贴近业务的指标项就是大家通常所说的业务用户数。但这个用户数比较笼统&#xff0c;其实和真实访问量有比较大的差距&#xff0c;所以为了更贴近实际业务量及压力…

Django_使用redis缓存数据

目录 一、配置redis 二、缓存Django的默认session 三、使用django的缓存机制缓存数据 四、自定义缓存数据 源码等资料获取方法 一、配置redis 在settings中添加配置参数 # Django的缓存配置 CACHES {"default": {"BACKEND": "django_redis.ca…

【网站开发】jq (jquery)实现瀑布流布局

要实现网站瀑布流效果&#xff0c;可以使用HTML、CSS和jquery来完成。下面是一种常见的实现方式&#xff1a; 注意要引入jQuery库。 代码如下&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title>…

【Unity面试篇】Unity 面试题总结甄选 |Unity进阶篇 | ❤️持续更新❤️

前言 关于Unity面试题相关的所有知识点&#xff1a;&#x1f431;‍&#x1f3cd;2023年Unity面试题大全&#xff0c;共十万字面试题总结【收藏一篇足够面试&#xff0c;持续更新】为了方便大家可以重点复习某个模块&#xff0c;所以将各方面的知识点进行了拆分并更新整理了新…

2023上半年工作总结

目录 一、目标达成情况总结&#xff1a; 二、工作/学习成果总结&#xff1a; 三、下半年规划总结&#xff1a; 一、目标达成情况总结&#xff1a; 其实我并没有给自己定多少目标&#xff0c;特别上长期的目标很少制定&#xff0c;总体来说2023年上班过的很平淡&#xff0c;波…

【Spring Boot】Spring Boot日志详情:基于lombok的日志输出

文章目录 1. 何为日志文件&#xff1f;2. 日志文件的作用3. 日志文件的基本使用3.1 Spring Boot中的日志3.2 自定义日志打印 4 日志级别4.1 日志级别的作用4.2 日志级别的分类4.3 日志级别的设置 5 日志持久化6 基于lombok的日志输出6.1 lombok 简单输出日志案例6.2 浅谈 lombo…

基于单片机空气质量检测二氧化碳 一氧化碳温湿度PM2.5检测系统的设计与实现

功能介绍 以51单片机作为主控系统&#xff1b;对空气空气中有毒有害气体进行监测&#xff1b;使用LCD1602液晶显示&#xff0c;采集到的PM2.5值通过单片机串口传输&#xff1b;通过传感器对室内PM2.5粉尘进行检查&#xff1b;通过按键设置的上限值&#xff1b;当检测到有毒气体…