【windows】安装 Tomcat 及配置环境变量

news2024/12/28 8:25:16

👨‍🎓博主简介

  🏅云计算领域优质创作者
  🏅华为云开发者社区专家博主
  🏅阿里云开发者社区专家博主
💊交流社区:运维交流社区 欢迎大家的加入!
🐋 希望大家多多支持,我们一起进步!😄
🎉如果文章对你有帮助的话,欢迎 点赞 👍🏻 评论 💬 收藏 ⭐️ 加关注+💗


文章目录

  • 一、前言
  • 二、官网下载安装包
  • 三、解压 Tomcat 压缩包
  • 四、配置环境变量
  • 五、测试是否配置成功、启动 Tomcat 服务
  • 六、页面访问
  • 七、部署完成

一、前言

因为最近在windows上安装了一个Tomcat,因为版本比较低;而最近在扫描服务漏洞,刚好也扫描了一些windows上的服务,就扫出来了一个漏洞,所以简单点就需要更新一下版本,来解决tomcat的漏洞问题;
漏洞名称为:(CVE-2021-31805) 远程代码执行漏洞,所以需要升级一下 Tomcat ,本次 Tomcat 升级到 9.0.82 版本 。

二、官网下载安装包

Tomcat官方下载地址:https://tomcat.apache.org/

  • 点击左侧的 Tomcat 9

在这里插入图片描述

  • 找到自己需要的版本 并 根据自己的电脑位数来下载,我这里是64位

在这里插入图片描述

三、解压 Tomcat 压缩包

将下载的包解压到自己想要放的目录;这里我放到桌面下,(因为这里做一下测试,所以就直接放到桌面了),放到桌面下之后解压apache-tomcat压缩包;

在这里插入图片描述

  • 可以看到以下是解压下来文件中的内容

在这里插入图片描述

四、配置环境变量

解压完之后,这里不需要做什么安装操作,只需要配置一下环境变量即可;

此电脑 --> 属性 --> 高级系统设置 --> 环境变量

这里此电脑 --> 属性 --> 高级系统设置这块我就不展示了,大家应该都可以找到吧;

在这里插入图片描述

系统变量 --> 新建
变量名:CATALINA_HOME
变量值:Tomcat的解压路径

在这里插入图片描述

点击确定 --> 找到系统变量中的Path --> 编辑
添加:

提示:这里根据windows版本的不同,添加环境变量的path的显示可能就不一样;

如果path变量值是一行一行的,那么在最后一行添加:%CATALINA_HOME%\bin就行;

如果path变量值是在一行中,那么在最后面添加:%CATALINA_HOME%\bin;
需要注意的是在一行中,在最后添加的时候需要注意前面是否有分号;,如果没有需要加上;

在这里插入图片描述

然后一直点击确定 --> 确定 --> 确定到桌面即可;

五、测试是否配置成功、启动 Tomcat 服务

进入 apache-tomcat-9.0.82/bin/目录,右击使用管理员执行 startup.bat 脚本;

启动结果如下图:

在这里插入图片描述

看到启动tomcat服务有乱码问题,我们先停止脚本,解决一下乱码问题;
停止tomcat服务:执行bin/下的shutdown.bat 脚本停止;

解决乱码问题:修改tomcat文件中的conf目录下的logging.properties:conf/logging.properties 文件中的 java.util.logging.ConsoleHandler.encoding,改为GBK即可;

java.util.logging.ConsoleHandler.encoding = GBK

在这里插入图片描述

修改完之后,保存退出后再执行startup.bat启动tomcat脚本,会发现没有乱码问题了;

在这里插入图片描述

到这里也就启动成功了。

六、页面访问

默认端口为8080

http://localhost:8080/

看到如下页面,则代表安装成功。

在这里插入图片描述

七、部署完成

更多windows相关知识,可订阅:《Windows相关技术》专栏。

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

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

相关文章

视频号小店如何开店,个人可以做吗?完整版开店教程分享

大家好,我是电商花花。 视频号小店现在成了新的电商创业新渠道,这两年视频号也迎来了大爆发,很多朋友也都靠着视频号、视频号小店赚到了人生第一桶金,让很多没有接触过视频号的朋友直流口水。 那视频号小店赚钱吗?个人…

OpenLayers基础教程——WebGLPoints图层样式的设置方法

1、前言 前一篇博客介绍了如何在OpenLayers中使用WebGLPoints加载海量数据点的方法,这篇博客就来介绍一下WebGLPoints图层的样式设置问题。 2、样式运算符 在VectorLayer图层中,我们只需要创建一个ol.style.Style对象即可,WebGLPoints则不…

研华工控机610L学习笔记2:visualstudio与第一个C#程序

今日继续学习工控机 C# 编程相关知识: 这篇结束后我将先进行一段时间的C#的学习研究,并写一些C#的笔记 后续再更新工控机编程设计相关 目录 1、安装visualstudio: 2、创建第一个C#程序: 3、寻找C#解决方案源文件: …

《深入浅出LLM 》(二):大模型基础知识

🎉AI学习星球推荐: GoAI的学习社区 知识星球是一个致力于提供《机器学习 | 深度学习 | CV | NLP | 大模型 | 多模态 | AIGC 》各个最新AI方向综述、论文等成体系的学习资料,配有全面而有深度的专栏内容,包括不限于 前沿论文解读、…

DM-达梦数据库实时主备搭建

dm实时主备说明 将主库产生的 Redo日志传输到备库,备库接收并重演Redo日志,从而实现备库与主库的数据同步。 一、环境准备 1.1、配置环境准备 首先搭建实时主备,要规划好机器的,我准备两台机器服务器 主服务器 mast…

小目标检测篇 | YOLOv8改进之增加小目标检测层(针对Neck网络为AFPN)

前言:Hello大家好,我是小哥谈。小目标检测是计算机视觉领域中的一个研究方向,旨在从图像或视频中准确地检测和定位尺寸较小的目标物体。相比于常规目标检测任务,小目标检测更具挑战性,因为小目标通常具有低分辨率、低对比度和模糊等特点,容易被背景干扰或遮挡。本篇文章就…

【C语言】tcp_sendmsg_locked

一、讲解 tcp_sendmsg_locked 函数是 Linux 内核中实现 TCP 数据发送的一个核心函数。这个函数被调用来将用户空间的数据通过 TCP 发送出去。以下是该函数的基本工作流程的中文解释: 1. 函数初始化和检查: - 它首先检查是否使用了 TCP 零拷贝发送&am…

【webpack】----错误解决【Cannot read properties of undefined (reading ‘tap‘)】

1. 报错场景 安装 webpack-obfuscator 后,进行 js 代码混淆编译的时候报错。 2. 报错截图 3. 错误原因 通常是由于版本不兼容或配置错误引起的。 4. 查询本地 webpack 版本 4.1 查询命令 npm 查询 npm view webpack versionyarn 查询 yarn info webpack ver…

Java学习笔记 | Java基础语法 | 03 | 流程控制语句

文章目录 0 前言1.流程控制语句1.1 流程控制语句分类1.2 顺序结构 2.判断语句2.1 if语句1. if语句格式1练习1:老丈人选女婿练习2:考试奖励 2. if语句格式2练习1:吃饭练习2:影院选座 3. if语句格式3练习1:考试奖励 2.2 …

C语言字节对齐关键字__attribute__((aligned(n)))的使用

0 前言 在进行嵌入式开发的过程中,我们经常会见到对齐操作。这些对齐操作有些是为了便于实现指针操作,有些是为了加速对内存的访问。因此,学习如何使用对齐关键字是对于嵌入式开发是很有必要的。 1 对齐规则 1.0 什么叫做对齐 众所周知&a…

实现登录拦截功能

1.4、实现登录拦截功能 温馨小贴士:tomcat的运行原理 当用户发起请求时,会访问我们像tomcat注册的端口,任何程序想要运行,都需要有一个线程对当前端口号进行监听,tomcat也不例外,当监听线程知道用户想要和…

发展规划--IM系统

1、时代背景 5G应用,多终端应用,物联网应用,小程序,工业互联,大数据应用等等大前端时代的到来,程序员不能只关注crud,因为以后的服务并发量只会越来越多。 高并发架构师、大数据架构师或者说j…

Redis入门到实战-第六弹

Redis实战热身Lists篇 完整命令参考官网 官网地址 声明: 由于操作系统, 版本更新等原因, 文章所列内容不一定100%复现, 还要以官方信息为准 https://redis.io/Redis概述 Redis是一个开源的(采用BSD许可证),用作数据库、缓存、消息代理和流…

【基于HTML5的网页设计及应用】——随机验证码

🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL&#xff1a…

WPF---1.入门学习

学习来源 布局 wpf布局原则 一个窗口中只能包含一个元素 不应显示设置元素尺寸 不应使用坐标设置元素的位置 可以嵌套布局容器 StackPanel-->表单条件查找布局 DataGrid wpf布局容器 StackPanel: 水平或垂直排列元素,Orientation属性分别: Horizontal / Vertic…

查询正在运行的Top SQL的脚本(建议收藏)

这篇文章提供了一些现成的SQL脚本,通过查询V$SQLSTATS视图找到正在运行的TOP SQL,用于后续的优化。建议大家收藏,需要查询TOP SQL时直接复制和粘贴即可。 之前的一篇文章解释了为什么要使用V$SQLSTATS视图。 当数据库表现出各种不同的性能问…

Linux/WifineticTwo

WifineticTwo Enumeration nmap 经过使用 nmap 对常见的 1000 个端口进行扫描,并加入禁止 ping 的参数,长时间的扫描结果显示,仅有 22 和 8080 两个端口处于开放状态 ┌──(kali㉿kali)-[~/vegetable/HTB/WifineticTwo] └─$ nmap 10.10…

渗压计测量:VW-102A与WM-103型读数仪的应用与优势

在当代工程测量领域,准确监测地下水压力变化对于确保建筑结构的安全和稳定至关重要。渗压计作为一种专业的测量工具,能够精确地监测和记录地下水的压力变化,是水利工程、地下建筑、坝体安全监测等领域不可或缺的仪器。今天主要给大家介绍下读…

make menuconfig

本文不是分析Linux的make menuconfig,而是如何将Linux这套机制适配到自己的项目里。 Linux内核配置工具会使用到menuconfig。menuconfig会用到mconf、conf两个命令。这两个命令是编译内核自动生成的。网上有开源的实现,我们下载下来自己编译&#xff1a…

SQLiteC/C++接口详细介绍sqlite3_stmt类(七)

返回:SQLite—系列文章目录 上一篇:SQLiteC/C接口详细介绍sqlite3_stmt类(六) 下一篇: 无 22、sqlite3_column_database_name 用于返回结果集中指定列的数据库名称。如果结果集是由多个Join操作产生的,…