Linux之 Ubuntu 安装常见服务 (二) Tomcat
安装TomCat 服务
1、安装JDK环境

https://www.oracle.com/java/technologies/downloads/ 下载的官网
wget https://download.oracle.com/java/20/latest/jdk-20_linux-x64_bin.deb (sha256)

使用dpkg进行软件安装时,提示:dpkg:处理软件包XXX时出错:依赖关系问题,仍未被配置
使用如下命令,sudo apt-get install -f 命令修复包依赖
等分析完之后,重新使用dpkg –i XXX.deb,就可以了。

jdk 安装的路径:
/usr/lib/jvm/jdk-20
sudo ln -s /usr/lib/jvm/jdk-20 /exprot/server/jdk
创建环境变量
sudo vim /etc/profile # 系统级别

soruce /etc/profile # 立马生效

检测jdk是否安装成功

2、解压并安装tomcat
因为tomcat是提供web服务的, 容易受到黑客攻击,为了服务器安全,建议 非root用户部署
(1)、关闭防火墙
(2)、创建用户
sudo useradd tomcat -m # -m 自带创建 tomcat 加目录
cat /etc/passwd # 查看用户信息
sudo passwd tomcat # 创建用户的密码

(3)、下载tomcat
下载 地址 https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.11/bin/apache-tomcat-10.1.11.tar.gz
sudo wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.11/bin/apache-tomcat-10.1.11.tar.gz
如果提示证书问题 加 --no-check-certificate 不校验证书
sudo wget --no-check-certificate https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.11/bin/apache-tomcat-10.1.11.tar.gz
(4)解压、软链接
sudo tar -zxvf apache-tomcat-10.1.11
(五)修改tomcat安装目录的权限
sudo chown -R tomcat:tomcat /export/server/tomcat # 同时对软链接和tomcat安装文件进行修改,使用*tomcat* 进行匹配

启动tomcat
./startup.sh
检测tomcat 服务是否正常
curl 127.0.0.1:8080 # 通过curl 请求 如果有范围html字符串,代表成功, 本机测试(mysql安装的本机)
如果上图不显示,就是非本机访问不成功,就是8080端口被限制拉 tomcat 默认端口是 8080
Ubuntu 默认是关闭防火墙
sudo ufw status # 查看防火墙状态 active 开启 inactive 关闭
sudo ufw enable # 开启防火墙
sduo ufw disable # 关闭防火墙

Centos 默认是开启防火墙
systemctl stop firewalld # 关闭防火墙
systemctl disable firewalld # 停止防火墙开机自启#方法2 放行8080 端口的外部访问
firewall-cmd --add-port=8080/tcp --permanent # permanent 永久生效
firewall-cmd --reload # 重新载入防火墙规则使其生效
相关文章:
Linux之 Ubuntu 安装常见服务 (二) Tomcat
安装TomCat 服务 1、安装JDK环境 https://www.oracle.com/java/technologies/downloads/ 下载的官网 wget https://download.oracle.com/java/20/latest/jdk-20_linux-x64_bin.deb (sha256) 使用dpkg进行软件安装时,提示:dpkg:处理软件包XX…...
docker 配置 Mysql主从集群
Docker version 20.10.17, build 100c701 MySQL Image version: 8.0.32 Docker container mysql-master is source. mys ql-replica is replication. master source. replica slave.名称叫法不一样而已。 Choose one of the way,与replica同步数据两种情况&…...
Layui实现OA会议系统之会议管理模块总合
目录 一、项目背景 二、项目概述 1. 概述 2. 环境搭建 3. 工具类引用 4. 功能设计 4.1 会议发布 4.2 我的会议 4.3 会议审批 4.4 会议通知 4.5 待开会议 4.6 历史会议 4.7 所有会议 5. 性能优点 5.1 兼容性好 5.2 可维护性和可扩展性 5.3 轻量灵活 5.4 模块化设计…...
fishing之踩坑篇捕获数据不齐全
文章目录 一、问题记录二、解决方法三、更新钓鱼模板四、进行点击邮件五、查看仪表盘免责声明 一、问题记录 通过点击邮件内的链接,提交数据,但是只记录密码,无法记录username 二、解决方法 对于需要被捕获的表单数据,除了inp…...
ppt使用笔记
文章目录 如何让文档好看纯文字绝对不可行多用流程图和效果图切换动画母版音乐视频 作品渐变星空放大镜随机抽奖 其他快捷键 作为一个开发,对这种表现类型的软件一直不太上心,但有些场景要用到ppt,例如述职和项目案例分享。 很直观的体验就是…...
java中的hashmap和concurrenthashmap解析
hashmap的初始化数组大小为16,如果发生哈希冲突的时候在当前的索引后面采用头插法以链表的形式继续插入节点。 concurrenthashmap的结构图如下所示: 本身不是16个节点吗?这里分为两个长度为4的数组,变成了4*4总共16个节点&#x…...
元素2D转3D 椭圆形旋转实现
椭圆旋转功能展示 transform-style: preserve-3d;(主要css代码) gif示例(背景图可插入透明以此实现边框线的旋转) 导致的无法点击遮挡问题可以参考我的另一个文章 穿透属性-----------------------css穿透属性 实时代码展示...
Centos7.9 制作openssh9.2p2 rpm升级包和升级实战
一、背景说明 Centos7.9 默认安装的openssh 版本为7.4p1,经绿盟扫描,存在高危漏洞,需要升级到最新。 官网只提供编译安装包,为了方便升级,先通过编译安装包,制作rpm包,并进行升级 如下为做好…...
JavaScript学习(3)
Web API 是开发人员的梦想。 它可以扩展浏览器的功能它可以极大简化复杂的功能它可以为复杂的代码提供简单的语法 什么是 Web API? API 指的是应用程序编程接口(Application Programming Interface)。 Web API 是 Web 的应用程序编程接口…...
2023华为OD机试真题Java实现【寻找最大价值的矿堆/深度优先搜索】
前言 本题使用Java实现,如果需要Python代码,请点击以下链接 点我 题目 我们规定,0表示空地,1表示银矿、2表示金矿,矿堆表示由相邻的金矿或银矿连接形成的地图。 银矿价值是1 ,金矿价值是2 ,你的目标是找出地图中最大价值的矿堆,并且输出该矿堆的价值 示例1 输入:…...
MyCat概述
1.MyCat概述 MyCat是阿里巴巴的产品,他是开源的、基于Java语言编写的MySQL数据库中间件。可以像使用mysql一样来使用mycat,对于开发人员来说根本感觉不到mycat的存在。 MyCat下载地址:http://dl.mycat.org.cn/ MyCat官网:http:/…...
【LeetCode】【数据结构】单链表OJ常见题型(一)
👀樊梓慕:个人主页 🎥个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》 🌝每一个不曾起舞的日子,都是对生命的辜负。 目录 前言: 【LeetCode】203.移除链表元素 【LeetCo…...
QGraphicsView实现简易地图3『局部加载-地图缩放』
前文链接:QGraphicsView实现简易地图2『瓦片经纬度』 第一篇文章提到过,当地图层级较大时,暴力全加载地图会造成程序卡顿,因此需要实现地图的局部加载。 实现思路:以地图窗口(以下称为视口)为地…...
bash的特性(二)IO重定向与管道
bash的I/O重定向及管道 一、概述 在shell中,最常使用的fd(file descriptor)有三个,标准输入,标准输出,错误输出。进程用文件描述符来管理打开的文件。 名称 文件描述符 标准输入(stdin) 0 键盘,也可以…...
elb 直接配置到后端服务器组
出现上图报错的原因是,前面elb配置了https证书,后端的nginx也配置了证书,导致冲突。 需要修改后端的nginx配置文件,将证书配置注释掉。 如果出现健康检查异常,需要在对应服务器的安全组上配置elb所在的网段的访问权限…...
安卓:BottomNavigationBar——底部导航栏控件
目录 一、BottomNavigationBar介绍 二、BottomNavigationBar的常用方法及其常用类 (一)、常用方法 1. 添加菜单项 2. 移除菜单项 3. 设置选中监听器 4. 设置当前选中项 5. 设置徽章 6. 样式和颜色定制 7. 动画效果 8. 隐藏底部导航栏。 9、设…...
十、用 ChatGPT 辅助写文章
目录 一、实验介绍 二、背景 三、ChatGPT 写作方式 3.1 传统写作方式 3.2 ChatGPT 写作方式...
计算机毕设 深度学习猫狗分类 - python opencv cnn
文章目录 0 前言1 课题背景2 使用CNN进行猫狗分类3 数据集处理4 神经网络的编写5 Tensorflow计算图的构建6 模型的训练和测试7 预测效果8 最后 0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往…...
60多行代码仿制B站首页一个好看的卡片效果
文章目录 1、为啥是这个?2、仿制效果3、实现思路4、代码5、查看B站如何实现 1、为啥是这个? 看到Bilibili首页的一个卡片,看着效果很不错,给人很舒适的感觉。一琢磨貌似也不难,甚至只需要一层 div 就可以实现主要框架…...
Redis内网主从节点搭建
Redis内网主从节点搭建 1、文件上传2、服务安装3、服务启动4、配置主从复制 1、文件上传 内网环境手动上传gcc-c、redis.tar文件 2、服务安装 # 解压 unzip gcc-c.zip unzip gcc_rpm.zip tar -zxvf redis-6.2.13.tar.gz# 安装 cd gcc_rpm/ rpm -ivh *.rpm --nodeps --force…...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...














