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

8.1-java+tomcat环境的配置+代理

一、回顾

1.安装nodejs,这是一个jdk一样的软件运行环境

yum -y list installed|grep epel
yum -y install nodejs 
node -v

2.下载对应的nodejs软件npm

yum -y install npm
npm -v
npm set config  .....淘宝镜像

3.安装vue/cli command line interface 命令行接口

npm install @vue/cli
#安装成功以后,不会直接在sbin或者bin目录添加软连接,所以需要我们查找可执行文件
find / -name "vue"

4.使用vue的可执行文件创建项目

...../vue .create eleme_web

5.进入到创建好的项目中,npm run serve

cd eleme_web
nohop npm run serve&

6.此时,这个服务并非生产项目

   生产   production    

   开发   development

7.samba分享到windows

yum -y install samba
vim /etc/samba.smb.conf
[eleme_web]
​       path=
​       comment=
​       guest ok =
​       writable=
useradd vueediter
smbpasswd -a vueediter
systemctl start nmb
systemctl start smb

8.部署nfs静态服务

(1)新主机

(2)应用安装

yum -y install rpcbind
yum -y install nfs

(3)配置文件 vim /etc/

/static/img  *(rw,sync)

(4)启动nfs服务

systemctl start rpcbind
systemctl start nfs

(5)在web主机上挂载

mount -t nfs 192.168.2.31:/static/img

(6)修改图片

(7)启动服务

npm run serve

9.构建项目

(1)创建

npm  run build

将静态的项目移动到nginx

(2)查看文件

[root@static-server eleme_web]# ls

babel.config.js node_modules package-lock.json srcdist nohup.out public vue.config.jsjsconfig.json package.json README.md

[root@static-server eleme_web]# ls dist/

css favicon.ico img index.html js

[root@static-server eleme_web]# cd /usr/local/nginx/conf.d/

[root@static-server conf.d]# ls

hui.conf

(3)备份文件

[root@static-server conf.d]# cp hui.conf eleme.conf

(4)修改eleme.conf 配置文件

[root@static-server conf.d]# vim eleme.conf

[root@static-server conf.d]# lseleme.conf hui.conf

(5)修改nginx.conf配置文件

[root@static-server conf.d]# vim /usr/local/nginx/conf/nginx.conf

(6)启动服务

[root@static-server conf.d]# /usr/local/nginx/sbin/nginx [root@static-server conf.d]# /usr/local/nginx/sbin/nginx -s reload

(7)测试

浏览器访问:

(8)在windows上修改配置文件

C:\Windows\System32\drivers\etc,修改hosts文件

404了,重新创建目录

(9)创建新目录

[root@static-server conf.d]# mkdir /eleme

(10)数据迁移

[root@static-server conf.d]# cp -r ~/eleme_web/dist/* /eleme/

(11)修改配置文件

[root@static-server conf.d]# vim eleme.conf

(12)启动服务

[root@static-server conf.d]# /usr/local/nginx/sbin/nginx -s reload

(13)测试

用浏览器访问域名www.eleme.com,就会出现这个页面

二、java环境的配置

配置jdk环境

#下载jdk包
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-tomcat-10.1.26.tar.gz
#解压jdk压缩包
tar -xf jdk-22_linux-x64_bin.tar.gz 
#对文件进行备份
mv jdk-22.0.2/ /usr/local/jdk22/
#进入到jdk-22.0.2/目录下
cd /usr/local/jdk22/
#配置文件
sed -i '$aexport JAVA_HOME=/usr/local/jdk22/' /etc/profile
sed -i '$aPATH=$JAVA_HOME/bin:$PATH' 
/etc/profile
#运行profile
source /etc/profile
#查看java版本
java -version

配置java环境时,除了使用sed,还可以用下面的代码

vim /etc/profile
export JAVA_HOME=/usr/local/jdk22/
export PATH=$JAVA_HOME/bin:$PATH

三、配置tomcat环境

1.tomcat配置的步骤

#使用wget下载tomcat包
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-tomcat-10.1.26.tar.gz #查看有没有将包下载下来
[root@002 ~]# ls
anaconda-ks.cfg               jdk-22_linux-x64_bin.tar.gz  nginx-1.26.1.tar.gz
apache-tomcat-10.1.26.tar.gz  nginx-1.26.1#解压
[root@002 ~]# tar -zxvf apache-tomcat-10.1.26.tar.gz #将apache tomcat移动到/usr/local/mulu下,改名 tomcat
[root@002 ~]# mv apache-tomcat-10.1.26 /usr/local/tomcat/
[root@002 ~]# ls /usr/local/tomcat/
bin           CONTRIBUTING.md  logs       RELEASE-NOTES  webapps
BUILDING.txt  lib              NOTICE     RUNNING.txt    work
conf          LICENSE          README.md  temp#启动服务
[root@002 ~]# /usr/local/tomcat/bin/startup.sh 
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk22/
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.[root@002 ~]# netstat -lnput|grep java
tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      1582/java           
tcp6       0      0 :::8080                 :::*                    LISTEN      1582/java           

2.测试

用浏览器访问ip:192.168.2.28

 

3.写测试页面

[root@002 ~]# cd /usr/local/tomcat/webapps/

[root@002 webapps]# mkdir myweb

[root@002 webapps]# vim myweb/my.txt

4.测试

用浏览器访问:192.168.2.28:8080/myweb/my.txt

5.在/usr/local/tomcat/webapps/myweb/下写一个a.jsp

[root@002 webapps]# cd myweb/

[root@002 myweb]# vim a.jsp

6.测试

用浏览器进行访问:192.168.2.28:8080/myweb/a.jsp

四、部署新机器

编号主机名IP地址
1001192.168.2.27
2002192.168.2.28
3003192.168.2.29

1.001、002、003上部署jdk和tomcat环境

步骤见二、三

2.写测试页面

(1)001的配置

#使用echo写测试页面
[root@001 ~]# echo "i am jsp java server page,number is 001" > /usr/local/tomcat/webapps/ROOT/index.jsp
#启动服务
[root@001 ~]# /usr/local/tomcat/bin/startup.sh
#关闭防火墙
[root@001 ~]# systemctl stop firewalld

(2)浏览器访问:192.168.2.27:8080

(3)002的配置

#使用echo写测试页面
[root@002 ~]# echo "i am jsp java server page,number is 002" > /usr/local/tomcat/webapps/ROOT/index.jsp
#启动服务
[root@002 ~]# /usr/local/tomcat/bin/startup.sh
#关闭防火墙
[root@002 ~]# systemctl stop firewalld

(4)浏览器访问:192.168.2.28:8080

(5)003的配置

#使用echo写测试页面
[root@003 ~]# echo "i am jsp java server page,number is 003" > /usr/local/tomcat/webapps/ROOT/index.jsp
#启动服务
[root@003 ~]# /usr/local/tomcat/bin/startup.sh
#关闭防火墙
[root@003 ~]# systemctl stop firewalld

(6)浏览器访问:192.168.2.29:8080

五、实现static_server代理001、002、003

1.进到/usr/local/nginx/conf.d/目录下

[root@static-server ~]# cd /usr/local/nginx/

[root@static-server nginx]# cd conf.d/

[root@static-server conf.d]# ls

eleme.conf hui.conf

2.对文件进行备份

[root@static-server conf.d]# cp eleme.conf el.conf

[root@static-server conf.d]# ls

el.conf eleme.conf hui.conf
 

3.修改el.comwen文件

[root@static-server conf.d]# vim el.conf

4.修改conf/nginx.conf文件

[root@static-server ~]# vim /usr/local/nginx/conf/nginx.conf

5.启动服务

[root@static-server ~]# /usr/local/nginx/sbin/nginx

6.修改hosts文件

[root@static-server ~]# vim /etc/hosts

7.在windows上修改hosts文件

(1)在C:\Windows\System32\drivers\etc中找到hosts文件

(2)修改hosts文件

8.测试

在浏览器上输入域名:www.el.com,就可以访问到001、002、003的测试页面,刷新页面可以轮询哦

相关文章:

8.1-java+tomcat环境的配置+代理

一、回顾 1.安装nodejs,这是一个jdk一样的软件运行环境 yum -y list installed|grep epel yum -y install nodejs node -v 2.下载对应的nodejs软件npm yum -y install npm npm -v npm set config .....淘宝镜像 3.安装vue/cli command line interface 命令行…...

gorm框架实现基本的增删改查

连接数据库 package mainimport ("github.com/jinzhu/gorm"_ "github.com/jinzhu/gorm/dialects/mysql" )func main() {db, err : gorm.Open("mysql","root:roottcp(127.0.0.1:3306)/test?charsetutf8mb4&parseTimeTrue&locLocal…...

AUTOSAR介绍

1、AUTOSAR架构介绍 AUTOSAR(AUTomotive Open System ARchitecture,汽车开放系统架构)是汽车和软件行业领先公司的全球合作联盟,为智能移动开发和建立标准化的软件框架以及开放的E/E系统架构。考虑到目前和未来市场中不同的汽车E/E架构,AUTOS…...

10. 计算机网络HTTP协议

1. 前言 无论是作为后端开发、前端开发、测试开发程序员或者是运维人员,在面试过程中,大概率都会被问到 HTTP 协议相关题目。 因为伴随着 2010 年之后移动互联网在全世界的高速发展,各种各样的浏览器(Chrome、FireFox、Safari 等)层出不穷,也诞生了诸多服务端开发的语言…...

“职场中,不要和上司作对”,真的很重要吗?你认同这句话吗?

在职场上,领导对下属的期望永远都只有两个字,不是忠诚,也不是能力,而是省心。 领导对下属的要求就是别让我操心。 在职场中,通常面临的首要问题就是如何与领导相处。 把职场中的前辈当作老师来尊重,你尊…...

可视化目标检测算法推理部署(一)Gradio的UI设计

引言 在先前RT-DETR模型的学习过程中,博主自己使用Flask框架搭建了一个用于模型推理的小案例: FlaskRT-DETR模型推理 在这个过程中,博主需要学习Flask、HTML等相关内容,并且博主做出的页面还很丑,那么,是…...

【PyTorch】基于YOLO的多目标检测项目(一)

【PyTorch】基于YOLO的多目标检测项目(一) 【PyTorch】基于YOLO的多目标检测项目(二) 目标检测是对图像中的现有目标进行定位和分类的过程。识别的对象在图像中显示有边界框。一般的目标检测方法有两种:基于区域提议的…...

spring boot 实现 Stream 钉钉事件订阅

1: 参考链接 https://open.dingtalk.com/document/orgapp/develop-stream-mode-push-server 2:钉钉开放平台订阅配置 配置之后运行一下上面提供的链接 里面的main方法,验证通道 3:订阅启动方式 EventListenerThread eventListenerThrea…...

基于 Rough.js 的 Vue 散点图绘制

本文由ScriptEcho平台提供技术支持 项目地址:传送门 基于 Rough.js 的 Vue 散点图绘制 应用场景 本代码展示了如何使用 Rough.js 库在 Vue 应用程序中绘制散点图。Rough.js 是一个轻量级 JavaScript 库,用于创建具有手绘风格的可视化效果。散点图是一…...

【c++】用c++指针传递来模拟“靶向治疗”

一:源码: #include <iostream>void targetedTherapy(bool* flag) {if (*flag == false) {*flag = true;} }int main() {//代表一系列癌细胞//true为健康细胞 false为癌变细胞bool cancerCell[7] = {true, false, true, true, true, true, false};for (int i = 0; i &…...

如何开启idea中的断言功能?

目录 一、什么是断言&#xff1f; 二、Java断言的语法 三、开启断言 一、什么是断言&#xff1f; 断言&#xff08;assert&#xff09;是 Java 中的一条语句&#xff0c;一种在程序中的逻辑&#xff08;如一个结果为真或假的逻辑判断式&#xff09;&#xff0c;目的是验证软…...

大模型之语言大模型技术

本文作为大模型综述第二篇,介绍语言大模型基本技术。 近年来,在 Transformer 架构基础上构建的预训练语言模型为自然语言处理领域带来了一系列突破式进展,成为人工智能主流技术范式。预训练语言模型采用“预训练+微调”方法,主要分为两步: 1)将模型在大规模无标注数据上…...

浮点数例外 (核心已转储) 的问题记录

一般这种问题&#xff0c;是程序运行过程中出现浮点数运算错误导致的程序崩溃 浮点异常可能由以下几个原因引起&#xff1a; 除以零&#xff1a;当程序中出现除以零的操作时&#xff0c;会触发浮点异常。例如&#xff0c;当一个数除以0时&#xff0c;会导致浮点异常。数值溢出…...

Vite项目中根据不同打包命令配置不同的后端接口地址,proxy解决跨域

在vite.config.ts同级目录添加两个文件 .env.development #开发环境 VITE_APP_ENV developmentVITE_APP_BASE_API .env.production #生产配置 VITE_APP_ENV productionVITE_APP_BASE_API https://www.bdjw.work代码中使用路径 const request axios.create({baseURL: i…...

Java新手启航:JDK 21 版本安装,开启编程之行

在Java开发前&#xff0c;JDK是必不可少的环境&#xff0c;接下来&#xff0c;让我们一起完成JDK 21版本的下载和安装&#xff01; 种一棵树最好的时间是10年前&#xff0c;其次就是现在&#xff0c;加油&#xff01; …...

Redis学习[5] ——Redis过期删除和内存淘汰

六、Redis过期键值删除 6.1 Redis的过期键值删除策略 6.1.1 什么是过期键值删除&#xff1f; Redis中是可以对key设置过期时间的&#xff0c;所以需要有相应的机制将已过期的键值对删除&#xff0c;也就是**过期键值删除策略。Redis会用一个过期字典&#xff08;expires dic…...

书生大模型学习笔记 - Python

Python实现wordcount 请实现一个wordcount函数&#xff0c;统计英文字符串中每个单词出现的次数。返回一个字典&#xff0c;key为单词&#xff0c;value为对应单词出现的次数。 解题思路&#xff1a;首先把字母转小写>然后把单词取出来去除标点>循环单词列表>key已存…...

spring security和核心流程

...

JavaScript青少年简明教程:面向对象编程入门

JavaScript青少年简明教程&#xff1a;面向对象编程入门 JavaScript 支持多种编程范式&#xff08;programming paradigms&#xff09;&#xff0c;即支持多种不同的编程风格和方法。 前面介绍的编程方式&#xff0c;主要是面向过程编程&#xff08;Procedural Programming&am…...

电话号的标准

点击标题下「蓝色微信名」可快速关注 最近碰到个电话号码的问题&#xff0c;除了常规数字&#xff0c;可能还会有国内国际的区号&#xff0c;例如中国&#xff0c;86、086、86&#xff0c;这些好像都见过&#xff0c;但什么是标准的&#xff1f;谁来定义的&#xff1f; 国际电信…...

RestClient

什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端&#xff0c;它允许HTTP与Elasticsearch 集群通信&#xff0c;而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级&#xff…...

Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误

HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误&#xff0c;它们的含义、原因和解决方法都有显著区别。以下是详细对比&#xff1a; 1. HTTP 406 (Not Acceptable) 含义&#xff1a; 客户端请求的内容类型与服务器支持的内容类型不匹…...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强&#xff0c;React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 &#xff08;1&#xff09;使用React Native…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话&#xff1a; “利润不是赚出来的&#xff0c;是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业&#xff0c;很多企业看着销售不错&#xff0c;账上却没钱、利润也不见了&#xff0c;一翻库存才发现&#xff1a; 一堆卖不动的旧货…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

CMake控制VS2022项目文件分组

我们可以通过 CMake 控制源文件的组织结构,使它们在 VS 解决方案资源管理器中以“组”(Filter)的形式进行分类展示。 🎯 目标 通过 CMake 脚本将 .cpp、.h 等源文件分组显示在 Visual Studio 2022 的解决方案资源管理器中。 ✅ 支持的方法汇总(共4种) 方法描述是否推荐…...

elementUI点击浏览table所选行数据查看文档

项目场景&#xff1a; table按照要求特定的数据变成按钮可以点击 解决方案&#xff1a; <el-table-columnprop"mlname"label"名称"align"center"width"180"><template slot-scope"scope"><el-buttonv-if&qu…...

Linux操作系统共享Windows操作系统的文件

目录 一、共享文件 二、挂载 一、共享文件 点击虚拟机选项-设置 点击选项&#xff0c;设置文件夹共享为总是启用&#xff0c;点击添加&#xff0c;可添加需要共享的文件夹 查询是否共享成功 ls /mnt/hgfs 如果显示Download&#xff08;这是我共享的文件夹&#xff09;&…...

Python爬虫(52)Scrapy-Redis分布式爬虫架构实战:IP代理池深度集成与跨地域数据采集

目录 一、引言&#xff1a;当爬虫遭遇"地域封锁"二、背景解析&#xff1a;分布式爬虫的两大技术挑战1. 传统Scrapy架构的局限性2. 地域限制的三种典型表现 三、架构设计&#xff1a;Scrapy-Redis 代理池的协同机制1. 分布式架构拓扑图2. 核心组件协同流程 四、技术实…...

基于django+vue的健身房管理系统-vue

开发语言&#xff1a;Python框架&#xff1a;djangoPython版本&#xff1a;python3.8数据库&#xff1a;mysql 5.7数据库工具&#xff1a;Navicat12开发软件&#xff1a;PyCharm 系统展示 会员信息管理 员工信息管理 会员卡类型管理 健身项目管理 会员卡管理 摘要 健身房管理…...