【tomcat】应用服务

news2024/12/23 0:08:24

准备环境

三台虚拟机

192.168.1.120

192.168.1.122

192.168.1.131

三台虚拟机关闭防火墙 、查看光盘 、检测yun创库

查看JDK是否安装

[root@localhost ~]# java -version

openjdk version "1.8.0_161" //这是系统自带的rpm方式安装

OpenJDK Runtime Environment (build 1.8.0_161-b14)

OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)

卸载rpm方式安装的jdk

方法一:

[root@localhost ~]# which java

/usr/bin/java

[root@localhost ~]# rm -rf /usr/bin/java

方法二:

[root@localhost ~]# rpm -qa | grep -i openjdk

java-1.7.0-openjdk-1.7.0.171-2.6.13.2.el7.x86_64

java-1.7.0-openjdk-headless-1.7.0.171-2.6.13.2.el7.x86_64

java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64

java-1.8.0-openjdk-headless-1.8.0.161-2.b14.el7.x86_64

[root@localhost ~]# rpm -e java-1.7.0-openjdk

[root@localhost ~]# rpm -e java-1.7.0-openjdk-headless

[root@localhost ~]# rpm -e java-1.8.0-openjdk --nodeps

[root@localhost ~]# rpm -e java-1.8.0-openjdk-headless

[root@localhost ~]# rpm -qa | grep -i openjdk

JDK安装

[root@localhost ~]# tar xf jdk-8u191-linux-x64.tar.gz

[root@localhost ~]# mv jdk1.8.0_191/ /usr/local/java

[root@localhost ~]# vim /etc/profile

export JAVA_HOME=/usr/local/java #设置java跟目录

export PATH=$PATH:$JAVA_HOME/bin #在PATH环境变量中添加java跟目录的bin子目录

[root@localhost ~]# source /etc/profile

[root@localhost ~]# java -version

java version "1.8.0_191"

Java(TM) SE Runtime Environment (build 1.8.0_191-b12)

Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)

第一台安装tomcat (192.168.1.123)

先将apache tomcat 的源码包拖入虚拟机

解压

[root@localhost ~]# tar xf apache-tomcat-8.5.40.tar.gz

解压后生成apache-tomcat-8.5.16文件夹,将该文件夹移动到/usr/local下,并改名为tomcat

[root@localhost ~]# mv apache-tomcat-8.5.40 /usr/local/tomcal

启动

[root@localhost ~]# /usr/local/tomcal/bin/startup.sh 

 

查看端口

[root@localhost ~]# netstat -lnpt | grep 8080

浏览器访问测试 http://192.168.1.120:8080

 

修改主配置文件

[root@localhost ~]# cd /usr/local/tomcal//conf/

server.xml 主配置文件

修改配置文件

[root@bogon conf]# vim server.xml 
 

加入以下红色内容表示自定义主页 /web/webapp 是路径

<Host name="localhost"  appBase="webapps"

            unpackWARs="true" autoDeploy="true">

            <Context docBase="/web/webapp" path="" reloadable="flase" >

            </Context>

        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

               prefix="localhost_access_log" suffix=".txt"

               pattern="%h %l %u %t "%r" %s %b" />

      </Host>

 

创建自定义路径

[root@localhost conf]# mkdir -p /web/webapp

编写首页文件

[root@localhost conf]# vim /web/webapp/index.jsp

 

 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<html>

<head>

<title>JSP test page</title>

</head>

<body>

<% out.println("Welcome to test site,http://www.test1.com");%>   #(首页内容)

</body>

</html> 

做完配置文件先关闭服务

[root@bogon conf]# /usr/local/tomcal//bin/shutdown.sh

 

再开启服务

[root@bogon conf]# /usr/local/tomcal//bin/startup.sh

 

再去浏览器访问测试 http://192.168.1.120:8080

就会变成我们写入的首页文件

查看测试页面(生产环境当中建议删除)

[root@bogon conf]# ls ../webapps/ROOT/

 

备份时间戳命令 【由于配置文件我们已经进行过修改这一步不需要在做】

[root@localhost ~]# cp /usr/local/tomcal/conf/server.xml{,.-$(date +%F)}

[root@localhost ~]# vim /usr/local/tomcat8/conf/server.xml

148       <Host name="localhost"  appBase="webapps"

149             unpackWARs="true" autoDeploy="true">

150             <Context docBase="/web/webapp" path="" reloadable="flase" >

151             </Context>

第二台安装tomcat (192.168.1.120)

【步骤通第一台安装一样在此不做过多演示】

 

第三台安装nginx

[root@nginx ~]# yum -y install pcre-devel zlib-devel openssl-devel lrzsz

创建 nginx 管理用户

[root@nginx ~]# useradd -M -s /sbin/nologin nginx

将nginx源码包拖进虚拟机

 

解压

[root@nginx ~]# tar xf nginx-1.16.0.tar.gz

[root@nginx ~]# cd nginx-1.16.0/

[root@nginx nginx-1.14.2]# ./configure --prefix=/usr/local/nginx  --user=nginx --group=nginx --with-file-aio --with-http_stub_status_module --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module && make && make install

--prefix=/usr/local/nginx //指定安装目录

 --user=nginx --group=nginx  //指定运行的用户和组

--with-file-aio //启用文件修改支持

 --with-http_stub_status_module //启用状态统计

 --with-http_ssl_module //启用ssl模块

 --with-http_flv_module //启用flv模块,提供寻求内存使用基于时间的偏移量文件

 --with-http_gzip_static_module //启用gzip静态压缩

       

如果安装过程中还需要其它依赖可自行选择安装

yum -y install gcc-c++

yum -y install pcre-devel

yum -y install zlib-devel

配置nginx.conf

[root@bogon nginx-1.16.0]# cp /usr/local/nginx/conf/nginx.conf{,.bak}

[root@bogon nginx-1.16.0]# vim /usr/local/nginx/conf/nginx.conf

在第一行写入 nginx 

user  nginx;
worker_processes  1;

 

为了nginx调动tomcat写入

upstream tomcat {
server  192.168.1.120:8080 weight=1;
server  192.168.1.122:8080 weight=1;
}

location ~ \.jsp$ {
            proxy_pass http://tomcat;
        }

 

 

查看配置文件配置是否出错

[root@bogon nginx-1.16.0]# /usr/local/nginx/sbin/nginx -t

启动nginx

[root@bogon nginx-1.16.0]# /usr/local/nginx/sbin/nginx

 

退出后重启nginx

killall -HUP nginx

查看80端口启动情况

netstat -anpt |grep :80

ps aux | grep nginx | grep -v grep

 

浏览器访问ip进行查看 192.168.1.131

 

浏览器访问验证 http://192.168.1.131/index.jsp

点击刷新回来回轮训

 

在第一台虚拟机配置

 

解压

tar xf SLSaleSystem.tar.gz -C /web/webapp/

 ls /web/webapp/SLSaleSystem/

vim /usr/local/tomcal/conf/server.xml

添加红色字样

<Context docBase="/web/webapp/SLSaleSystem" path="" reloadable="flase" >

</Context>

 /usr/local/tomcal/bin/shutdown.sh

/usr/local/tomcal/bin/startup.sh

浏览器访问第一台机ip 192.168.1.120:8080

 

在第二台机上配置

[root@localhost ~]# yum -y install mariadb-server mariadb

[root@localhost ~]# systemctl start mariadb

[root@localhost ~]# mysql

MariaDB [(none)]> create database slsaledb;

MariaDB [(none)]> grant all on slsaledb.* to admin@'%' identified by '123456';

MariaDB [(none)]> flush privileges;

上传文件

[root@localhost ~]# mysql -uroot < slsaledb-2014-4-10.sql

 安装SLSaleSystem

 

解压 连接

[root@elk-node1 ~]# tar xf SLSaleSystem.tar.gz -C /web/webapp/


[root@elk-node1 ~]# ls /web/webapp/SLSaleSystem/

 [root@localhost ~]# vim /web/webapp/SLSaleSystem/WEB-INF/classes/jdbc.properties

修改红色字样内容

driverClassName=com.mysql.jdbc.Driver

url=jdbc\:mysql\://192.168.1.122\:3306/slsaledb?useUnicode\=true&characterEncoding\=UTF-8

uname=admin

password=123456

minIdle=10

maxIdle=50

initialSize=5

maxActive=100

maxWait=100

removeAbandonedTimeout=180

removeAbandoned=true

[root@localhost ~]# /usr/local/tomcat8/bin/shutdown.sh

[root@localhost ~]# /usr/local/tomcat8/bin/startup.sh 

用户密码admin、123456

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

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

相关文章

云端刺点难?这次看看云端地球怎么做

了解像控点与刺点 像控点是直接为摄影测量的控制点加密或测图需要而在实地布设并进行测定的控制点。 刺像控点是把外业采集的像控点的地理坐标与看到这个点的照片相关联的过程。在倾斜摄影建模中&#xff0c;使用像控点进行刺点可以大大提高建模精度。 为什么云端地球可以做…

青岛大学_王卓老师【数据结构与算法】Week04_02_带尾结点的循环链表合并_学习笔记

本文是个人学习笔记&#xff0c;素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享&#xff0c;另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权&#xff0c;请留言作删文处理。 课程视频链接&#xff1a; 数据结构与算法基础–…

LLM搭建金融系统

背景&#xff1a; 这篇文章主要给大家介绍如何基于LLM模型配合各种pluging工具&#xff08;这边主要是跟数据连接、检索的工具相关&#xff1a;知识图谱、向量库...)。在开始文章前先讲讲我的观点&#xff1a;大模型的颠覆性应用应该不在于AIGC&#xff0c;而在于数据驱动技术…

python验证公网ip与内网ip

公网IP和内网IP都是用于标识网络设备的地址&#xff0c;但它们有着不同的作用和特点。 公网IP是由互联网服务提供商&#xff08;ISP&#xff09;分配给用户设备的唯一标识符。它是全球范围内唯一的&#xff0c;并且可以被其他网络设备使用来寻找和连接特定的设备。公网IP通常用…

Linux操作系统中命令提示符最后的符号为“#”或“$”

07-Linux操作系统中命令提示符最后的符号为“#”或“$” 1、最后提示符“#”2、最后提示符“$”3、[lwhlocalhost~]中 “ ~” 1、最后提示符“#” 表示管理员身份2、最后提示符“$” 表示不同用户3、[lwhlocalhost~]中 “ ~” 表示当前用户的家目录

安装umi

安装umi 一、安装Node.js&#xff0c;通过node -v查看版本号 二、安装yarn&#xff0c;其中tyarn使用的是npm.taobao.org的源&#xff0c;速度要快一些&#xff08;可以把yarn看做优化了的npm&#xff09; 1. 安装tyarn npm i yarn tyarn -g1 -g&#xff1a;全局安装 2. …

【C++】用Ceres从三维点中拟合三维空间中的圆

任务描述 在三维空间中有N个点&#xff0c;需要得到过这N个点的最优圆&#xff0c;需要估计圆的圆心、半径和法向量&#xff0c;本文提供了一种方法和代码示例&#xff0c;利用Ceres进行非线性拟合&#xff0c;在cpp上开发。 圆心为三维&#xff0c;半径一维&#xff0c;法向…

深入刨析容器(四):深入理解容器镜像

容器通过Namespace和Cgroups将自己与宿主机隔离&#xff0c;那么容器里的进程看到文件系统又是什么样子的呢&#xff1f;容器里的程序应该看到完全独立的文件系统&#xff0c;这样它就可以在自己的容器目录&#xff08;比如 /tmp&#xff09;下进行操作&#xff0c;而完全不会受…

贝莱德CEO力挺比特币!币圈嘲讽:传统金融从嘲笑到开始入场了!

资产管理巨头贝莱德&#xff08;BlackRock&#xff09;首席执行官Larry Fink公开喊话&#xff0c;希望监管者以民主化方式&#xff0c;来看待现货ETF申请。将与监管积极配合&#xff0c;解除他们对现货比特币ETF的疑虑。 六月中旬&#xff0c;贝莱德向美国证券交易委员会&#…

vue3中Cron表达式的使用

效果&#xff1a; <a-form-item label"Cron表达式" name"cron" required><a-input v-show"false" v-model:value"setForm.cron"></a-input><a-button type"primary" size"small" click"…

使用NVCleanstall导致显卡功率被锁至115W问题解决

以拯救者Y9000K为例&#xff0c;显卡功耗最大可以达到165W&#xff0c;但最近更新至最新的显卡驱动后&#xff0c;发现显卡功率被限制到了115W。一度怀疑是老黄做了手脚。 经过一系列测试后发现&#xff0c;是自己操作姿势不对。 NVIDIA Platform Controllers and Framework这…

leetcode极速复习版-第四章字符串

目录 344. 反转字符串 541. 反转字符串II 剑指Offer 05.替换空格 151.翻转字符串里的单词 剑指Offer58-II.左旋转字符串 28.实现 strStr() 459.重复的子字符串 字符串总结 344. 反转字符串 编写一个函数&#xff0c;其作用是将输入的字符串反转过来。输入字符串以字符数组 char…

JAVA jfreechart生成柱状图

JAVA jfreechart生成柱状图 在项目资源评估中&#xff0c;也就是生成word文档里需要根据数据生成柱状图&#xff0c;在网上找到了jfreechart工具包&#xff0c;来生成柱状图&#xff0c;当然他不仅仅只能生成柱状图&#xff0c;还支持折线图、饼状图等等… 过程 导入依赖 &l…

快速创建剪映草稿

实现原理 : JianYingPro 项目文件是 json 的形式存储的,只需要创建draft_content.json,draft_mate_info.json 打开软件后会自动补全。添加一个媒体到轨道顺序 草稿媒体库 -> 内容媒体库-> 轨道片段add_media_to_track 会识别媒体类型,加入到对应轨道。当没有视频轨道时…

哈希表 基础理论

什么是哈希表&#xff1f; 哈希表英文名hash table&#xff0c;国内有一些书籍也翻译为散列表。哈希表是根据关键码的值而直接进行访问的数据结构。 直白来讲&#xff0c;其实数组就是一张哈希表&#xff0c;哈希表中关键码就是数组的索引下标&#xff0c;然后通过下标直接访…

华为云编译构建CodeArts Build新手操作指南

华为云编译构建&#xff08;CodeArts Build&#xff09;基于云端大规模并发加速&#xff0c;为客户提供高速、低成本、配置简单的混合语言构建能力&#xff0c;帮助客户缩短构建时间&#xff0c;提升构建效率。 本文将给各位开发者带来华为云CodeArts Pipeline的手把手初级教学…

亚马逊买家账号被封的原因

亚马逊封号原因有很多种情况&#xff0c;以下是一些可能导致账号被封的常见原因&#xff1a; 1、违反亚马逊的服务条款&#xff1a;亚马逊有一系列的服务条款和规定&#xff0c;如果您违反了这些规定&#xff0c;比如多次提交虚假评价、涉及欺诈行为、滥用退货政策等&#xff…

【深度学习】日常笔记9

泛化误差&#xff08;generalization error&#xff09;是指&#xff0c;模型应⽤在同样从原始样本的分布中 抽取的⽆限多数据样本时&#xff0c;模型误差的期望。考虑对掷硬币的结果&#xff08;类别0&#xff1a;正⾯&#xff0c;类别1&#xff1a;反⾯&#xff09;进⾏分类的…

AIGC - Stable Diffusion 图像控制插件 ControlNet (OpenPose) 配置与使用

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/131591887 论文&#xff1a;Adding Conditional Control to Text-to-Image Diffusion Models ControlNet 是神经网络结构&#xff0c;用于控制预…

CentOS7安装详细安装

CentOS 7镜像下载 官网下载链接&#xff1a;http://isoredirect.centos.org/centos/7/isos/x86_64/ step1: 进入下载页&#xff0c;选择阿里云站点进行下载 Actual Country 国内资源 Nearby Countries 周边国家资源 阿里云站点&#xff1a;http://mirrors.aliyun.com/cento…