Tomcat服务与运用

news2024/9/27 20:02:06

案例准备

1.规划节点

IP

主机名

节点

192.168.20.20

tomcat

Tomcat

2.基础准备

使用VMWare Workstation软件安装CentOS 7.2操作系统,镜像使用提供的CentOS-7-x86_64-DVD-1804.iso,最小化安装CentOS 7.2系统

案例实施

1.基础环境配置

1.1修改主机名
[root@localhost ~]# hostnamectl set-hostname tamcat
[root@localhost ~]# bash
1.2关闭防火墙
[root@tamcat ~]# systemctl stop firewalld
[root@tamcat ~]# systemctl disable firewalld
[root@tamcat ~]# setenforce 0
[root@tamcat ~]# sed -i "s/SELINUX=.*/SELINUX=disabled/" /etc/selinux/config                       

2.安装JDK

部署Tomcat环境需要JDK软件环境,解压tar包,设置环境变量,检查JDK安装情况。

2.1上传软件包并解压

# 将安装 Tomcat 所需软件包传到/opt目录下,切换至/opt下,安装JDK。

[root@tamcat opt]# ls
apache-tomcat-9.0.16.tar.gz  jdk-8u202-linux-x64.rpm
[root@tamcat opt]# rpm \-ivh jdk-8u202-linux-x64.rpm
2.2 设置环境变量

# 修改配置文件:

[root@tamcat opt]# vi /etc/profile.d/java.sh
export JAVA\_HOME\=/usr/java/jdk1.8.0\_202-amd64
export JRE\_HOME\=$JAVA\_HOME/jre
export CLASSPATH\=.:$JAVA\_HOME/lib:$JRE\_HOME/lib
export PATH\=$JAVA\_HOME/bin:$JRE\_HOME/bin:$PATH

# 刷新文件,使其立即生效

[root@tamcat opt]# source /etc/profile.d/java.sh

# 再次查看JDK版本

[root@tamcat opt]# java \-version

 3.安装Tomcat服务

3.1上传软件包并解压

# 将解压后的源码包目录拷贝至/usr/local/下并重命名为tomcat

[root@tamcat opt]# tar -zxvf apache-tomcat-9.0.16.tar.gz 
[root@tamcat opt]# mv apache-tomcat-9.0.16 /usr/local/tomcat
3.2 修改启动脚本

# 修改如下配置文件

[root@tamcat bin]# vi /usr/local/tomcat/bin/catalina.sh
# 放在首行
export JAVA_HOME=/usr/java/jdk1.8.0_202-amd64
export JRE_HOME=$JAVA_HOME/jre

# 设置完成后,重新启动Tomcat

[root@tamcat bin]# /usr/local/tomcat/bin/catalina.sh run
3.3 启动tomcat服务

# 进入/usr/local/tomcat/bin目录下进行启动

[root@tamcat bin]# ./startup.sh 
3.4关闭tomcat服务(每次修改配置文件后均执行)

# 进入/usr/local/tomcat/bin目录下进行启动

[root@tamcat bin]# ./shutdown.sh 

4.浏览器访问

# 浏览器访问Tomcat的默认主页 http://192.168.20.20:8080

4.1 编辑tomcat配置文件

# 修改配置文件,使Tomcat监听80端口,可以通过不加8080端口的方式使其直接访问

[root@tomcat ~]# vi /usr/local/tomcat/conf/server.xml

4.2 重启Tomcat服务

# 进入/usr/local/tomcat/bin目录下进行启动

[root@tamcat bin]# ./startup.sh 
4.3 登录网站

# 通过浏览器访问(打开浏览器在地址栏中输入http://ip/(注意你的IP))

5.配置Tomcat虚拟主机

# 查看默认虚拟主机,并新增虚机主机,安装数据库,分别通过appBase、docBase部署Java应用

5.1安装数据库

# 安装并启动查看

[root@tomcat ~]# yum install -y mariadb-server
[root@tomcat ~]#  systemctl start mariadb

# 创建数据库和用户

[root@tomcat ~]# mysql -u root 
MariaDB [(none)]> CREATE DATABASE zrlog;
MariaDB [(none)]> CREATE USER 'zrlog'@'localhost' IDENTIFIED BY '123456';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON zrlog.* TO 'zrlog'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> SHOW DATABASES;
5.2 AppBase部署Java应用

# 上传zrlog的war包到/opt目录下,再拷贝到/usr/local/tomcat/webapps/

[root@tomcat opt ~]# cp zrlog-1.7.1-baaecb9-release.war /usr/local/tomcat/webapps/

# 重命名软件包

[root@tomcat webapps ~]# mv zrlog-1.7.1-baaecb9-release zrlog

# 使用刚刚创建的zrlog用户信息填写浏览器中打开的网页,Email填写自己的邮箱。http://ip/zrlog,设置管理员账号(admin)和管理员密码(123456)

5.3 查看虚拟主机
[root@tomcat ~]# vi/usr/local/tomcat/conf/server.xml

5.4 新增虚拟主机
[root@tomcat ~]# vi /usr/local/tomcat/conf/server.xml
添加:
<Host name="www.123.cn" appBase=""
           unpackWARs="true" autoDeploy="true"
           xmlValidation="false" xmlNamespaceAware="false">
        <Context path="" docBase="/data/wwwroot/123.cn/" debug="0" reloadable="true" crossContext="true"/>
      </Host>

5.5 DocBase部署Java应用

# 创建docBase目录

[root@tomcat ~]# mkdir -p /data/wwwroot/123.cn/

# 移动文件,将/usr/local/tomcat/webapps/zrlog 中的所有文件移动到/data/wwwroot/123.cn/目录下

[root@tomcat ~]#  mv /usr/local/tomcat/webapps/zrlog/* /data/wwwroot/123.cn/

# 在Windows下绑定hosts文件

打开记事本,修改hosts文件添加Ip和域名,保存退出

# 使用CMD终端ping命令ping www.123.cn看是否为虚拟机Ip

5.6 访问网址

# 打开浏览器在地址栏输入www.123.cn

6.配置Tomcat日志

# 在tomcat日志存放路径中去查看tomcat日志文件

[root@tomcat ~]# cd /usr/local/tomcat/logs/
6.1 新增虚拟主机访问日志
[root@tomcat ~]# vi /usr/local/tomcat/conf/server.xml
添加:
       <!--配置访问日志-->
          <Valve className="org.apache.catalina.valves.AccessLogValve"
                 directory="logs"
                 prefix="123_access_log"
                  suffix=".txt"
                  pattern="%h %l %u %t &quot;%r&quot; %s %b" />
# 这将使 Tomcat 为该虚拟主机记录访问日志,日志文件将保存在 /usr/local/tomcat/logs 目录下,文件名格式为 123_access_log.txt
6.2 重启Tomcat服务
# 先停止当前服务
[root@tamcat bin]# ./shoutdown.sh
# 在重启服务 
[root@tamcat bin]# ./startup.sh 
6.3 查看是否有日志
[root@tomcat ~]# ls -l /usr/local/tomcat/logs/
[root@tomcat ~]# cat /usr/local/tomcat/logs/123_access_log.2024-09-22.txt

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

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

相关文章

微信小程序的 button 标签的边框如何去除?

目录 问题描述&#xff1a; 问题原因&#xff1a; 解决办法&#xff1a; 方案一 方案二 问题描述&#xff1a; 实际开发中会发现这个 button 自带有样式&#xff0c;当背景颜色设置为白色的时候还有一个黑色的边框&#xff0c;刚开始那个边框怎么都去不掉 无法去除的边框…

IRR 之 24期免息等于免费?钱买保险还是余额宝?

一、IRR 是什么&#xff1f; 英文全称是 Internal Rate of Return 具体公式可以参考公众号 随园经济56&#xff5c;内部收益率 简单理解可以为&#xff1a; IRR是投资项目在整个生命周期中所能获得的平均年化收益率 更简单理解为&#xff0c;余额宝展现给你的年化收益 二、…

WLS2连接本地USB设备的方法

WLS2连接本地USB设备的方法 说明windows端1.下载usbipd-win并安装2.启动WSL3.以管理员身份运行Windows PowerShell”4.WSL中查看USB设备 说明 WLS2连接本地USB设备的方法 windows端 1.下载usbipd-win并安装 可下载**.msi文件&#xff0c;双击即可安装 2.启动WSL 3.以管理…

如何将Excel表格嵌入Web网页在线预览、编辑并保存到自己服务器上?

猿大师办公助手作为一款专业级的网页编辑Office方案&#xff0c;不仅可以把微软Office、金山WPS和永中Office的Word文档内嵌到浏览器网页中实现在线预览、编辑保存等操作&#xff0c;还可以把微软Office、金山WPS和永中Office的Excel表格实现网页中在线预览、编辑并保存到服务器…

如何在Windows、Mac和Linux系统上安装和更新Stable Diffusion WebUI

在图像生成领域&#xff0c;Stable Diffusion与Automatic1111表现出色&#xff0c;给MidJourney、OpenAI的DALL-E和Bing图像生成器带来了激烈的竞争。在本文中&#xff0c;我们将帮助您在本地安装Automatic1111 WebUI&#xff0c;以便您可以从文本提示创建出色的图像。 要生成…

原生代理IP是什么?

代理IP的各个类型称呼有很多&#xff0c;且它们在网络使用和隐私保护方面扮演着不同的角色。今天将探讨什么是原生IP以及原生IP和住宅IP之间的区别&#xff0c;帮助大家更好地理解这两者的概念和实际应用&#xff0c;并选择适合自己的IP类型。 一、什么是原生IP&#xff1f; 原…

智慧防灾,科技先行:EasyCVR平台助力地质灾害视频监测系统建设

随着科技的飞速发展&#xff0c;视频监控技术已成为地质灾害监测与预警的重要手段之一。在众多视频监控平台中&#xff0c;EasyCVR视频汇聚平台凭借其强大的视频整合、实时传输、视频处理及分发等能力&#xff0c;在地质灾害场景中展现出显著的应用优势。 一、实时监测与远程监…

2024年自动化、电气控制系统与设备国际学术会议(AECSE 2024)

在线投稿&#xff1a;学术会议-学术交流征稿-学术会议在线-艾思科蓝 2024年自动化、电气控制系统与设备国际学术会议&#xff08;AECSE 2024&#xff09;是致力于将“自动化与电气”领域的专家学者、研发者和技术人员汇集一堂的国际盛会。会议将于2024年10月18-20日在中国南京…

【CSS】透明度 、过渡 、动画 、渐变

opacity 透明度transition 过渡animation 动画background 渐变 ( 线性渐变 \ 径向渐变 ) opacity 透明度 设置元素的透明度&#xff0c;会影响元素及其所有子元素的透明度&#xff0c;值范围&#xff1a;0&#xff08;完全透明&#xff09;到 1&#xff08;完全不透明&#xff…

树上前缀和详解

零、前言 关于前缀和&#xff1a; 前缀和详解&#xff0c;朴素前缀和&#xff0c;前缀和变形&#xff0c;二维前缀和_前缀积-CSDN博客 关于LCA&#xff1a; LCA算法-倍增算法_lca倍增算法-CSDN博客 LCA算法-Tarjan算法_lca数组-CSDN博客 树链剖分——重链剖分&#xff0c…

IGZO基底无电容DRAM单元前景看好

1.DRAM技术简介 DRAM&#xff08;Dynamic Random Access Memory&#xff0c;动态随机存取存储器&#xff09;是一种用于计算机和其他电子设备中的主存储器类型&#xff0c;其主要由存储单元阵列构成&#xff0c;而每一个存储单元由一个电容器和一个晶体管组成&#xff0c;如图…

自动驾驶热成像物体检测数据集-热成像数据集-汽车行人热成像数据集

标签 物体检测fila data set模型 类别 (4) 自行车汽车狗人 度量指标 平均精度均值 (mAP)&#xff1a;88.8%准确率 (Precision)&#xff1a;92.0%召回率 (Recall)&#xff1a;78.9% 尝试此模型 上传一张图片或者从您的设备中选择 描述 自动驾驶热成像物体检测 概述 该…

重回1899元,小米这新机太猛了

如果不出意外&#xff0c;距离高通年度旗舰骁龙 8 Gen4 发布还剩下不到一个月时间。 对于以小米 15 为首即将到来的下半年各家旗舰机型厮杀画面&#xff0c;讲道理小忆早已是备好瓜子儿摆上果盘翘首以盼了。 不过在这之前&#xff0c;中端主流选手们表示有话要说&#xff1a;为…

React UI组件库推荐

Next UI&#xff1a;Vite | NextUI - Beautiful, fast and modern React UI Library Ant Design&#xff1a;Ant Design - 一套企业级 UI 设计语言和 React 组件库

Kafka系列之:安装使用kafka_exporter详细步骤

Kafka系列之:安装使用kafka_exporter详细步骤 一、kafka_exporter二、下载kafka_exporter三、理解Topic Metrics指标四、理解Consumer Groups Metrics指标五、启动kafka_exporter六、查看页面七、systemctl托管服务一、kafka_exporter kafka_exporter源码kafka_exporter下载页…

【大模型对话 的界面搭建-Open WebUI】

Open WebUI 前身就是 Ollama WebUI&#xff0c;为 Ollama 提供一个可视化界面&#xff0c;可以完全离线运行&#xff0c;支持 Ollama 和兼容 OpenAI 的 API。 github网址 https://github.com/open-webui/open-webui安装 第一种 docker安装 如果ollama 安装在同一台服务器上&…

餐饮平价时代到来,价格战只是开始

餐饮正在变天。 “‘活得好’要排在第一位&#xff0c;‘做大做强’往后排。”9月25日&#xff0c;西贝餐饮董事长贾国龙在某餐饮行业论坛上透露&#xff0c;上周与海底捞创始人张勇通电话聊了15分钟&#xff0c;一致认为现在要保利润率&#xff0c;而不是保增长率。 2021年开…

babylon.js-1:入门篇

最近项目中使用到了 Babylon.js 这门技术&#xff0c;从今天开始&#xff0c;抽取自己写的比较好的拿出来&#xff0c;作为分享案例&#xff1a; 记录学习成果通过笔记的方式记录技术积累方便工作中查找翻阅实现案例 是什么 Babylon.js是一个基于WebGL的开源3D渲染引擎&…

为什么优秀的工厂更重视生产现场

在日本的企业界&#xff0c;“现场”这个词就如同“改善”一样&#xff0c;被管理者普遍使用。优秀的公司&#xff0c;总是把“现场”摆在组织的最顶端&#xff0c;表示对它的重视。 组织中的各个阶层——高级管理阶层、中级管理阶层、工程师和现场督导人员&#xff0c;都是因…

javascript promise的使用

Promise是异步编程的一种解决方案。 它能优雅的方式来处理异步操作&#xff0c;避免产生回调地狱&#xff0c;这样的代码难看而且不容易维护。 普通方式调用&#xff1a;处理异常的时候&#xff0c;用逗号隔开 链式调用&#xff1a; // 1.使用setTimeout// setTimeout(() >…