前排提醒:本文不涉及如何安装 Tomcat,仅分析Tomcat目录结构。

Tomcat 版本:apache-tomcat-8.5.71

Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。十分有必要了解Tomcat目录结构。

总结概括:

一级目录

bin ——Tomcat执行脚本目录

conf ——Tomcat配置文件

lib ——Tomcat运行需要的库文件(JARS)

logs ——Tomcat执行时的LOG文件

temp ——Tomcat临时文件存放目录

webapps ——Tomcat的主要Web发布目录(存放我们自己的JSP,SERVLET,类)

work ——Tomcat的工作目录,Tomcat将翻译JSP文件到的Java文件和class文件放在这里。

二级目录(仅列出一级目录下几个重要的文件)

(1) bin目录下的文件

  • catalina.sh 用于启动和关闭tomcat服务器
  • configtest.sh 用于检查配置文件
  • startup.sh 启动Tomcat脚本
  • shutdown.sh 关闭Tomcat脚本

(2) conf目录下的文件

  • server.xml Tomcat 的全局配置文件
  • web.xml 为不同的Tomcat配置的web应用设置缺省值的文件
  • tomcat-users.xml Tomcat用户认证的配置文件

(3) lib目录下的文件

  • 包含被Tomcat使用的各种各样的jar文件。

(4) logs目录下的文件

  • localhost_access_log.2013-09-18 .txt 访问日志
  • localhost.2013-09-18.log 错误和其它日志
  • manager.2013-09-18.log 管理日志
  • catalina.2013-09-18.log Tomcat启动或关闭日志文件

(5) webapps目录下的文件

  • 含Web应用的程序(JSP、Servlet和JavaBean等)

(6) work目录下的文件

  • 由Tomcat自动生成,这是Tomcat放置它运行期间的中间( intermediate)文件(诸如编译的JSP文件)地方。

    如果当Tomcat运行时,你删除了这个目录那么将不能够执行包含JSP的页面。


\[QAQ
\]

目录结构

解压Tomcat后的目录结构如下图

各目录及文件说明

目录及文件 说明
bin 用于存放 Tomcat的启动、停止等批处理脚本和Shell脚本
bin/startup. bat 用于在 Windows下启动 Tomcat
bin/startup.sh 用于在 Linux下启动 Tomcat
bin/shutdown. bat 用于在 Windows下停止 Tomcat
bin/shutdown.sh 用于在 Linux下停止 Tomcat
conf 用于存放 Tomcat的相关配置文件
conf/Catalina 用于存储针对每个虚拟机的 Context 配置
conf/context.xml 用于定义所有Web应用均需要加载的 Context 配置,如果Web应用指定了自己的context.xml,那么该文件的配置将被覆盖
conf/catalina.properties Tomcat环境变量配置
conf/catalina.policy 当 Tomcat在安全模式下运行时,此文件为默认的安全策略配置
conf/logging.properties Tomcat日志配置文件,可通过该文件修改 Tomcat日志级别以及日志路径等
conf/server.xml Tomcat服务器核心配置文件,用于配置 Tomcat的链接器、监听端口、处理请求的虚拟主机等。可以说,Tomcat主要根据该文件的配置信息创建服务器实例
conf/tomcat-users.xml 用于定义 Tomcat默认用户及角色映射信息,Tomcat的 Manager模块即用该文件中定义的用户进行安全认证
conf/web.xml Tomcat中所有应用默认的部署描述文件,主要定义了基础 Servlet和MIME映射。如果应用中不包含 Web. xml,那么 Tomcat将使用此文件初始化部署描述,反之,Tomcat会在启动时将默认部署描述与自定义配置进行合并
lib Tomcat服务器依赖库目录,包含 Tomcat服务器运行环境依赖lar包
logs Tomcat默认的日志存放路径
webapps Tomcat默认的Web应用部署目录
work 存放Web应用JSP代码生成和编译后产生的class文件目录
temp 存放tomcat在运行过程中产生的临时文件

bin目录

用于存放 Tomcat的启动、停止等批处理脚本和Shell脚本

conf目录

用于存放 Tomcat的相关配置文件

lib目录

Tomcat服务器依赖库目录,包含 Tomcat服务器运行环境依赖lar包

webapps目录

Tomcat默认的Web应用部署目录

temp目录

存放tomcat在运行过程中产生的临时文件

work 目录

Tomcat的工作目录,Tomcat将翻译JSP文件到的Java文件和class文件放在这里。

JSP | Tomcat目录结构详解的更多相关文章

  1. [转帖]Tomcat目录结构详解

    Tomcat目录结构详解 https://www.cnblogs.com/veggiegfei/p/8474484.html 之前应该是知道一点 但是没有这么系统 感谢原作者的描述. 1.bin: 该 ...

  2. Tomcat目录结构详解

    1.bin: 该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个exe文件:tomcat6.exe.tomcat6w.exe,前者是在控制台下启动Tomcat,后者是弹出UGI窗口 ...

  3. Linux文件系统的目录结构详解

    Linux文件系统的目录结构详解   一.前 言 文章对Linux下所有目录一一说明,对比较重要的目录加以重点解说,以帮助初学者熟练掌握Linux的目录结构. 二.目 录 1.什么是文件系统 2.文件 ...

  4. Angular-cli新建项目目录结构详解

    Angular-cli新建项目目录结构详解 在上一篇博客中我们已经通过Angular CLI命令行工具创建出来一个全新的Angular项目,要想写项目,首先我们要先搞清楚项目的目录结构是怎样的,每个文 ...

  5. Linux目录结构(目录结构详解是重点)

    1.Linux目录与Windows目录对比 1.Windows目录结构 2.Linux目录结构 深刻理解Linux 树状文件目录是非常重要的,只有记住他们,你才能在命令行中任意切换,想去哪里去哪里 2 ...

  6. Nuxt.js学习(二) --- Nuxt目录结构详解、Nuxt常用配置项、Nuxt路由配置和参数传递

    [TOC] 1.Nuxt目录结构详解 Nuxt项目文件目录结构 |-- .nuxt // Nuxt自动生成,临时的用于编辑的文件,build |-- assets // 用于组织未编译的静态资源入LE ...

  7. Linux 目录结构详解

    Linux目录详解 Linux目录详解(RHEL5.4) 由于linux是开放源代码,各大公司和团体根据linux的核心代码做各自的操作,编程.这样就造成在根下的目录的不同.这样就造成个人不能使用他人 ...

  8. Tomcat7目录结构详解

    1.bin:该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个exe文件:tomcat6.exe.tomcat6w.exe,前者是在控制台下启动Tomcat,后者是弹出UGI窗口启 ...

  9. Vue脚手架(vue-cli)搭建和目录结构详解

    一.环境搭建 1.安装node.npm.webpack,不多说 2.安装vue-cli脚手架构建工具,打开命令行工具输入:npm install vue-cli -g,安装完成之后输入 vue -V( ...

  10. Android开发:程序目录结构详解

    HelloWorld程序的目录结构概述 我们可以在文件夹中看到,HelloWorld程序的目录主要包括:src文件夹.gen文件夹.Android文件夹.assets.res文件夹. AndroidM ...

随机推荐

  1. 关于fstream对象的open方法报错183的问题

    当使用fstream,ifstream,ofstream,这几种对象打开文件, 但文件已经存在的时候, 调用GetLastError()函数,会返回错误代码183, 这个代码代表该文件已经存在,是正常 ...

  2. MySQL8.0 安装教程

    一.下载 1.官网地址 MySQL :: Download MySQL Community Server 2.选择安装包安装方式 3.选择安装版本 4.开始下载 5.下载成功 二.安装 1.双击安装包 ...

  3. serdes与PCIE的区别

    serdes和PCIE是两种非常常见的总线.因为PCIE也是差分信号传输,所以做硬件时比较难区别PCIE和serdes的具体差异点. 两者之间的区别主要表现在以下几点: 1.PCIE使用了SERDES ...

  4. 笔记3:Tensorflow2.0实战之MNSIT数据集

    最近Tensorflow相继推出了alpha和beta两个版本,这两个都属于tensorflow2.0版本:早听说新版做了很大的革新,今天就来用一下看看 这里还是使用MNSIT数据集进行测试 导入必要 ...

  5. Elasticsearch入门到进阶

    Elasticsearch 一.Elasticsearch 是什么(中文官网)? Elasticsearch 是一个分布式的免费开源搜索和分析引擎,适用于包括文本.数字.地理空间.结构化和非结构化数据 ...

  6. 开发AI量化策略所遇到的坑

    AI只是工具,想要驾驭AI还得自身有点功底,不然反而会被工具所害,甚至从信仰AI变为抵制AI.本文简单介绍开发AI量化选股策略中所遇到的各种坑,希望大家有所收获,少走弯路. 本文为BigQuant用户 ...

  7. Celery 定义和调用异步任务Task

    https://docs.celeryq.dev/en/stable/userguide/tasks.html 使用app.task装饰器定义 需要通过导入celery app,然后使用@app.ta ...

  8. 大四jsp实训项目技术总结

    crm项目总结 ①静态资源疯狂报错?很有可能是后端的问题,后端出了问题,服务器取不出来资源. 记住:只要服务器取不到某个资源,很有可能导致所有资源都取不出来. 一个经典案例:某个数据库映射文件 ICu ...

  9. BUUCTF Web CyberPunk WriteUp

    想直接查看payload的点这里 前言 二次注入(Second-Order Injection)是指攻击者在应用程序中注入恶意数据,然后在稍后的操作或不同的上下文中再次使用该恶意数据,导致安全漏洞.它 ...

  10. 文心一言 VS 讯飞星火 VS chatgpt (19)-- go语言的slice和rust语言的Vec的扩容流程是什么?

    go语言的slice和rust语言的Vec的扩容流程是什么? 文心一言: 在Go语言中,slice(切片)和Rust语言中的Vec都是用于存储一组固定长度的元素的数据结构.它们的扩容流程略有不同,下面 ...