当前位置: 首页 > news >正文

认识Tomcat (一)

认识Tomcat (一)

一、服务器

在这里插入图片描述

1.1 服务器简介

​ 硬件服务器的构成与一般的PC比较相似,但是服务器在稳定性、安全性、性能等方面都要求更高,因为CPU、芯片组、内存、磁盘系统、网络等硬件和普通PC有所不同。

​ 软件服务器(英文名称Server),也称伺服器。指一个管理资源并为用户提供服务的计算机软件,通常分为文件服务器、数据库服务器和应用程序服务器。运行以上软件的计算机或计算机系统也被称为服务器。

1.2 JavaEE应用服务器(JavaEE Application Server**)**

​ 应用服务器是Java EE规范的具体实现, 可以执行/驱动基于JavaEE平台开发的web项目。绝大部分的应用服务器都是付费产品。

常见的应用服务:

Weblogic(BEA Oracle 收费)

Webshpere(IBM 收费)

JBoss(RedHad 收费)

Geronimo(Apache 免费)

1.3 Web容器(Web Server)

只实现了JavaEE平台下部分技术标准,如Servlet,Jsp,JNDI,

JavaMail。Web容器是开源免费的。

Tomcat(Apache 开源免费)

Jetty(Jetty 开源免费)

二、Tomcat的使用

2.1 Tomcat简介

​ Tomcat服务器是Apache的一个开源免费的Web容器。它实现了JavaEE平台下部分技术规范,属于轻量级应用服务器。

2.2 Tomcat作用

​ 可以在Tomcat中运行我们所编写的Servlet、JSP。

在这里插入图片描述

三、Tomcat的下载与安装

3.1 Tomcat下载

下载地址:http://tomcat.apache.org/

3.2 Tomcat安装

Tomcat 是绿色软件,下载解压之后即可使用。

3.3 配置环境变量

Tomcat是用Java语言开发的Web容器,所以在使用Tomcat时需要在操作系统中正确配置环境变量。

JAVA_HOME:C:\Program Files\Java\jdk1.8.0_171

PATH:%JAVA_HOME%\bin;

CLASS_PATH:%JAVA_HOME%\lib;

3.4 Tomcat启动黑屏直接退出

这是因为下载之后,没有在系统变量中配置环境变量无法启动。配置上面的环境变量即可。

四、Tomcat目录结构与介绍

在这里插入图片描述

4.1 bin

bin目录主要是用来存放tomcat的命令文件,主要有两大类,一类

是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命

令)。

4.2 conf

conf目录主要是用来存放tomcat的一些配置文件。

4.3 lib

lib目录主要用来存放tomcat运行需要加载的jar包。在这个目录中需要注意下面这两个包
在这里插入图片描述

4.4 logs

logs目录用来存放tomcat在运行过程中产生的日志文件。

4.5temp

temp目录用户存放tomcat在运行过程中产生的临时文件。(清空

不会对tomcat运行带来影响)

4.6webapps

webapps目录用来存放应用程序,当tomcat启动时会去加载

webapps目录下的应用程序。可以以文件夹、war包的形式发布应

用。

4.7work

work目录用来存放tomcat在运行时的编译后文件,例如JSP编译后

的文件。

在这里插入图片描述

五、Tomcat基本使用

在这里插入图片描述

在Windows系统下启动 .bat文件,在Linux系统下启动.sh 文件

在这里插入图片描述

Tomcat的启动与关闭需要执行bin目录中的命令脚本。

5.1 Tomcat启动

方式一

运行startup.bat文件。

方式二

catlina.bat start

其中catlina.bat是命令文件,start是启动Tomcat参数。

这个是一串命令需要在终端启动。

5.2 Tomcat关闭

方式一

运行shutdown.bat文件。

方式二

catlina.bat stop

其中catlina.bat是命令文件,stop是关闭Tomcat参数。

这个是一串命令需要在终端启动。

方式三

直接关闭掉控制台窗口。

这种方式关闭可能会关闭不完全,下次启动时候报错。

5.3 访问Tomcat

访问Tomcat的URL格式:

http://ip:port

访问本机Tomcat的URL格式:

http://localhost:8080

5.4 Tomcat配置文件介绍

Tomcat 的配置文件由4个xml组成,分别是 context.xml、web.xml、server.xml、tomcat-users.xml。每个文件都有自己的功能与配置方法。

context.xml

context.xml 是 Tomcat 公用的环境配置。 Tomcat 服务器会定时

去扫描这个文件。一旦发现文件被修改(时间戳改变了),就会自

动重新加载这个文件,而不需要重启服务器 。

web.xml

Web应用程序描述文件,都是关于是Web应用程序的配置文件。所

有Web应用的 web.xml 文件的父文件。

server.xml

是 tomcat 服务器的核心配置文件,server.xml的每一个元素都对

应了 tomcat中的一个组件,通过对xml中元素的配置,实现对

tomcat中的各个组件和端口的配置。

tomcat-users.xml

配置访问Tomcat的用户以及角色的配置文件。

在这里插入图片描述

5.5 解决控制台乱码

控制台产生乱码的原因是在Tomcat在输出日志中使用的是UTF-8编

码,而我们中文的Windows操作系统使用的是GBK编码。由于编码

格式不统一,所以出现了乱码。

解决方式:

修改conf目录中的logging.properties文件重新指定的编码方式。

java.util.logging.ConsoleHandler.encoding =GBK

在这里插入图片描述

5.6修改Tomcat监听端口

Tomcat默认监听端口为8080。可以通过修改server.xml文件来改变

Tomcat的监听端口。

在这里插入图片描述

5.6 配置Tomcat Manager

5.6.1 什么是Tomcat Manager

Tomcat Manager是Tomcat自带的、用于对Tomcat自身以及部署

在Tomcat上的应用进行管理的web应用。默认情况下,Tomcat

Manager是处于禁用状态的。准确的说,Tomcat Manager需要以

用户角色进行登录并授权才能使用相应的功能,不过Tomcat并没有

配置任何默认的用户,因此我们需要先进行用户配置后才能使用

Tomcat Manager。

5.6.2 配置Tomcat Manager的访问用户

Tomcat Manager中没有默认用户,我们需要在tomcat-users.xml

文件配置。Tomcat Manager的用户配置需要配置两个部分:角色

配置、用户名及密码配置。

5.6.3 Tomcat Manager中的角色分类

manager-gui角色:

允许访问HTML GUI和状态页面(即URL路径为/manager/html/*)

manager-script角色:

允许访问文本界面和状态页面(即URL路径为/manager/text/*)

manager-jmx角色:

允许访问JMX代理和状态页面(即URL路径为/manager/jmxproxy/*)

manager- status角色:

仅允许访问状态页面(即URL路径为/manager/status/*)

5.7 配置用户及角色

修改tomcat-users.xml

在这里插入图片描述

5.8 解除访问限制

进入Tomcat的webapps目录下,打开webapps/manager/METAINF/context.xml文件,修改下面这段配置。可以在任意IP下访问Tomcat。

为/manager/jmxproxy/*)

manager- status角色:

仅允许访问状态页面(即URL路径为/manager/status/*)

5.7 配置用户及角色

修改tomcat-users.xml

[外链图片转存中…(img-iWY3JWqj-1707059048553)]

5.8 解除访问限制

进入Tomcat的webapps目录下,打开webapps/manager/METAINF/context.xml文件,修改下面这段配置。可以在任意IP下访问Tomcat。

在这里插入图片描述

相关文章:

认识Tomcat (一)

认识Tomcat (一) 一、服务器 1.1 服务器简介 ​ 硬件服务器的构成与一般的PC比较相似,但是服务器在稳定性、安全性、性能等方面都要求更高,因为CPU、芯片组、内存、磁盘系统、网络等硬件和普通PC有所不同。 ​ 软件服务器&…...

SSH免密切换服务器案例-ssh协议(公钥和私钥)

公钥和私钥理解 公钥提供加密,私钥解密,公钥可以共享,私钥不可以。举例公钥相当于锁头,可以给别人用,钥匙相当于私钥,只能开自己发出去的锁头,也就是私钥和公钥成对,私钥只能解密对…...

AMH面板如何安装与公网远程访问本地面板界面

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

【教3妹学编程-算法题】1696. 跳跃游戏 VI

3妹:好冷啊, 冻得瑟瑟发抖啦 2哥 : 没想到都立春了还这么冷啊~ 3妹:暴雪、冻雨、大雨,这天气还让不让人活啦!!! 2哥 :哎,好多人都滞留的高铁站了,没法回家了 3妹&#xf…...

解决C#中无限递归导致的System.StackOverflowException异常

目录 背景: 错误示例分析: 为什么是错误的? 正确的使用递归: 修改后的代码: 原理和原因: 结论: 背景: 在软件开发中,递归是一种常见的编程技术,它允许方法调用自…...

ASP.NET Core 预防开放式重定向攻击

写在前面 为预防钓鱼网站的常用套路,在进行 Web 应用程序的开发时,原则上应该将所有由用户提交的数据视为不可信。如果应用程序中包含了基于 URL 内容重定向的功能,需要确保这种类型的重定向操作只能在应用本地完成,或者明确判断…...

HashCat 恢复Excel、Word、PPT密码保姆教程

HashCat 恢复Excel、Word、PPT密码 一、流程 整体需要两个步骤 先用office2john.py获取下文件的hash值 python office2john.py 1.xlsx > hash这个命令需要你电脑有python环境,然后在cmd命令窗口中执行此命令就行 文件链接:https://github.com/magnu…...

flink实战--flink的job_listener使用解析

背景 生产环境可能有如下的需求:当一个flink作业提交完成或者是运行中不定时给我们触发某个接口或发送一个消息,然后我们在做其他的操作,尤其是batch作业。 flink的job_listener就可以满足我们监听flink任务提交和运行状态的需求,具体如何使用本文将全面介绍一下。 注册入…...

ASR 概述

前言 随着企业加强了与客户的线上沟通,企业越发依赖于虚拟助手、聊天机器人以及其他的语音技术,以实现与客户的高效互动。这几类人工智能,都是依赖于自动语音识别技术,简称为 ASR。ASR 涉及到将语音转换为文本,促使计…...

聊聊比特币----比特币地址

⽐特币地址是⼀个标识符(帐号),包含27-34个字母数字拉丁字符(0,O,I除外)。地址可以以QR码形式表⽰,是匿名的,不包含关于所有者的信息。 地址⽰例:14qViLJfdG…...

(4)【Python数据分析进阶】Machine-Learning模型与算法应用-回归、分类模型汇总

线性回归、逻辑回归算法应用请参考: https://codeknight.blog.csdn.net/article/details/135693621https://codeknight.blog.csdn.net/article/details/135693621本篇主要介绍决策树、随机森林、KNN、SVM、Bayes等有监督算法以及无监督的聚类算法和应用PCA对数据进行降维的算法…...

Python 调用 OpenAI ChatGPT API

一、安装环境1. 安装python环境 $ pip install openai 2. 验证是否安装成功 方法1,bash命令验证 $ pip show openai 方法2,python脚本验证 import openai print(openai.__version__) 3. 找到你的 OpenAI API Key:进入OpenAI官网&#xff0…...

springboot155基于JAVA语言的在线考试与学习交流网页平台

简介 【毕设源码推荐 javaweb 项目】基于springbootvue 的 适用于计算机类毕业设计,课程设计参考与学习用途。仅供学习参考, 不得用于商业或者非法用途,否则,一切后果请用户自负。 看运行截图看 第五章 第四章 获取资料方式 **项…...

echarts使用之地图(五)

1 基本使用 百度地图 API : 使用百度地图的 api , 它能够在线联网展示地图 , 百度地图需要申请 ak 矢量地图 : 可以离线展示地图 , 需要开发者准备矢量地图数据。本文使用该方式。 json格式的数据如下&#xff1a; 格式参照&#xff1a;GeoJSON <!DOCTYPE html&…...

【已解决】青龙面板依赖安装失败原因

青龙面板必须安装依赖&#xff0c;才可以执行脚本&#xff0c;这是不争的事实。 如果脚本跑不起来&#xff0c;就去看看依赖吧。 NodeJs 依赖如下 axios request canvas cheerio js-base64 dotenv magic tough-cookie ws7.4.3 require requests date-fns ts-md5 typescript j…...

[Python] 什么是KMeans聚类算法以及scikit-learn中的KMeans使用案例

什么是无监督学习&#xff1f; 无监督学习是机器学习中的一种方法&#xff0c;其主要目的是从无标签的数据集中发现隐藏的模式、结构或者规律。在无监督学习中&#xff0c;算法不依赖于任何先验的标签信息&#xff0c;而是根据数据本身的特征和规律进行学习和推断。无监督学习…...

在 iOS 上安装自定企业级应用

了解如何安装您的组织创建的自定应用并为其建立信任。 本文适用于学校、企业或其他组织的系统管理员。 您的组织可以使用 Apple Developer Enterprise Program 创建和分发企业专用的 iOS 应用&#xff0c;以供内部使用。您必须先针对这些应用建立信任后&#xff0c;才能将其打…...

【Linux C | I/O模型】Unix / Linux系统的5种IO模型 | 图文详解

&#x1f601;博客主页&#x1f601;&#xff1a;&#x1f680;https://blog.csdn.net/wkd_007&#x1f680; &#x1f911;博客内容&#x1f911;&#xff1a;&#x1f36d;嵌入式开发、Linux、C语言、C、数据结构、音视频&#x1f36d; &#x1f923;本文内容&#x1f923;&a…...

C++设计模式-简单工厂模式,工厂方法模式,抽象工厂模式

目录 简单工厂模式&#xff0c;工厂方法模式&#xff0c;抽象工厂模式 附&#xff1a; 简单工厂模式&#xff0c;工厂方法模式&#xff0c;抽象工厂模式 简单工厂模式&#xff1a;根据字符串参数返回对象。 工厂方法模式&#xff1a;创建一维对象&#xff0c;即一个工厂创建…...

java处理ppt方案详解

需求 需要系统中展示的ppt案例有一个动态展示的效果&#xff0c;也就是要有动画的交互&#xff0c;要求支持浏览器直接打开预览 背景 目前已经实现了前端上传pptx文件&#xff0c;后端解析为png的图片&#xff0c;前端掉接口返回对应的图片&#xff0c;模拟播放ppt的效果 各种尝…...

基于SpringBoot的旅游网站管理系统

源码获取地址&#xff1a; 链接: https://pan.baidu.com/s/1Swe7JUSV7rRuBkagxRgL6g?pwdaufn提取码: aufn&#xff08;文件先保存到自己网盘&#xff0c;谨防文件丢失&#xff01;&#xff01;&#xff09; 该网站是一个旅游管理系统&#xff0c;旨在为用户提供便捷的旅游信息…...

无需昂贵显卡,用快马云端ai快速验证openclaw本地知识库问答原型

最近在尝试搭建一个本地知识库问答系统&#xff0c;发现OpenClaw这个开源多模态大语言模型特别适合这个场景。不过本地部署对硬件要求比较高&#xff0c;我的笔记本显卡根本跑不动。好在发现了InsCode(快马)平台&#xff0c;用它的云端AI算力轻松解决了这个问题。下面分享下我的…...

鸿蒙系统终极阅读神器:开源阅读如何彻底改变你的数字阅读体验

鸿蒙系统终极阅读神器&#xff1a;开源阅读如何彻底改变你的数字阅读体验 【免费下载链接】legado-Harmony 开源阅读鸿蒙版仓库 项目地址: https://gitcode.com/gh_mirrors/le/legado-Harmony 你是否厌倦了商业阅读应用的广告弹窗&#xff1f;是否受限于平台书库的有限内…...

Vin象棋:基于Yolov5的中国象棋智能视觉辅助系统,重新定义数字化对弈体验

Vin象棋&#xff1a;基于Yolov5的中国象棋智能视觉辅助系统&#xff0c;重新定义数字化对弈体验 【免费下载链接】VinXiangQi Xiangqi syncing tool based on Yolov5 / 基于Yolov5的中国象棋连线工具 项目地址: https://gitcode.com/gh_mirrors/vi/VinXiangQi 在数字化对…...

告别繁琐:用快马生成openclaw自动化安装脚本,效率提升300%

最近在折腾openclaw这个工具时&#xff0c;发现手动安装过程实在太磨人了。每次都要反复查文档、处理各种依赖报错&#xff0c;光是环境配置就能耗掉大半天。于是琢磨着能不能搞个自动化方案&#xff0c;把安装流程标准化。试了几个方法后&#xff0c;终于在InsCode(快马)平台上…...

【人生底稿】07:2017-2018:从Java后端到全栈,我如何用一年时间为北漂埋下伏笔

2017-2018&#xff0c;从纯Java后端到全栈开发&#xff0c;自学AngularJS、安卓&#xff0c;完成监控运维平台升级&#xff1b;2018年6月&#xff0c;跟着领导辞职北漂创业。14年老码农亲述&#xff1a;所有的沉淀&#xff0c;都是为了更好的出发。 一、开篇&#xff1a;2017&a…...

Autovisor:5分钟快速上手的智慧树自动化学习终极指南

Autovisor&#xff1a;5分钟快速上手的智慧树自动化学习终极指南 【免费下载链接】Autovisor 2025智慧树刷课脚本 基于Python Playwright的自动化程序 [有免安装版] 项目地址: https://gitcode.com/gh_mirrors/au/Autovisor Autovisor是一款专为智慧树在线课程平台设计的…...

开源阅读鸿蒙版完整指南:打造你的专属数字图书馆

开源阅读鸿蒙版完整指南&#xff1a;打造你的专属数字图书馆 【免费下载链接】legado-Harmony 开源阅读鸿蒙版仓库 项目地址: https://gitcode.com/gh_mirrors/le/legado-Harmony 开源阅读鸿蒙版是一款专为鸿蒙系统用户设计的免费开源电子书阅读器&#xff0c;它彻底改变…...

N_m3u8DL-CLI-SimpleG:跨平台M3U8视频下载工具全场景应用指南

N_m3u8DL-CLI-SimpleG&#xff1a;跨平台M3U8视频下载工具全场景应用指南 【免费下载链接】N_m3u8DL-CLI-SimpleG N_m3u8DL-CLIs simple GUI 项目地址: https://gitcode.com/gh_mirrors/nm3/N_m3u8DL-CLI-SimpleG 一、场景定位&#xff1a;用户能力与需求匹配模型 三级…...

CosyVoice语音克隆3步上手:5分钟搭建个人语音合成服务

CosyVoice语音克隆3步上手&#xff1a;5分钟搭建个人语音合成服务 1. 快速了解CosyVoice语音克隆 CosyVoice是由阿里巴巴通义实验室开发的多语言语音生成模型&#xff0c;它最吸引人的功能就是零样本声音克隆——只需要3-10秒的参考音频&#xff0c;就能克隆出相似度极高的合…...