第十九次(安装nginx代理tomcat)
回顾
1.安装nodejs---jdk一样你的软件运行环境
yum -y list install|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.samba分享到
yum -y install samba vim /etc/samba/smb.conf [eleme_web]path=comment=guest ok=writable=useradd vueeditersmb -a vueeditersystemctle start nmbsystemctl start smb
7.部署nfs静态服务
1.应用安装
yum -y install rpcbind yum -y install nfs-utils
2.配置文件
vim /etc/exportts/static/img/ *(rw,sync)
3.启动nfs服务
systemctle start rpcbind systemctle start nfs
4.在web主机挂载
mount -t nfs 192.168.1.15/static/img
1.java 环境配置
1.下载jdk
https://www.oracle.com/cn/java/technologies/downloads/ #官网地址 wget https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.tar.gz
2.解压
[root@dynamic01 ~]# tar -zxvf jdk22.tar.gz
3.移动到usr目录
[root@dynamic01 ~]#mv jdk22 /usr/local/tomcat/
4.配置文件
vim /etc/exportexport JAVA_HOME=/usr/local/jdk22/export PATH=$JAVA_HOME/bin:$PATH
5.运行profile
source /etc/profile
6.测试
java java -version
2.tomcat
1.下载Tomcat
https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-tomcat-10.1.26.tar.gz
2.解压
[root@dynamic01 ~]# tar -zxvf apache-tomcat-10.1.26.tar.gz
3.将apacheTomcat移动到/usr/local/目录下,改名tomcat
[root@dynamic01 ~]# mv apache-tomcat-10.1.26 /usr/local/tomcat/
4.启动Tomcat
[root@dynamic01 ~]# /usr/local/tomcat/bin/startup.sh
5.查看端口
[root@dynamic01 ~]# netstat -lnput|grep java tcp6 0 0 127.0.0.1:8005 :::* LISTEN 1590/java tcp6 0 0 :::8080 :::* LISTEN 1590/java
6.关闭Tomcat
[root@dynamic01 ~]# /usr/local/tomcat/bin/shutdown.sh
7.测试
真机访问tomcat

[root@dynamic01 ~]# cd /usr/local/tomcat/webapps/ [root@dynamic01 webapps]# mkdir myweb [root@dynamic01 webapps]# vim myweb/my.txt 1111111

3.tomcat目录介绍
1.bin目录
[root@001 bin]# lsbootstrap.jar daemon.sh shutdown.shcatalina.bat digest.bat startup.batcatalina.sh digest.sh startup.shcatalina-tasks.xml makebase.bat tomcat-juli.jarciphers.bat makebase.sh tomcat-native.tar.gzciphers.sh migrate.bat tool-wrapper.batcommons-daemon.jar migrate.sh tool-wrapper.shcommons-daemon-native.tar.gz setclasspath.bat version.batconfigtest.bat setclasspath.sh version.shconfigtest.sh shutdown.bat1、含有多个可执行文件,这些可执行文件在window和linux中是通用2、win10上优化之后上传到linux,只需要添加权限就可以了3、win对应的的文件的扩展名为bat(批处理文件)4、linux对应的文件的扩展名为sh5、startupsh.sh启动服务,shutdown.sh停止服务
2.webapps目录
[root@001 tomcat]# cd webapps/[root@001 webapps]# mkdir myweb[root@001 myweb]# vim 1.txti am jsp......i am jsp[root@001 webapps]# vim myweb/a.jsp i am jsp......i am jsp......<%=3+4 %>[root@001 webapps]# lsdocs examples host-manager manager myweb ROOT 1、webapps目录中每个目录都是一个项目 2、ROOT是默认的项目目录,在实际开发中,我们可以将程序打包成ROOT.war或者将目录名称修改为 ROOT就可以直接发布 3、使用10.0.0.20:8080直接访问的页面是ROOT目录下的index.jsp 4、在这个目录下可以部署一些静态资源,可以使用浏览器查看,也可以使用下载 5、还可以在该目录下创建新的文件夹作为项目发布 要发布项目有两个选项: 1、将项目移动到该目录下 2、在conf/server.xml修改资源文件的位置 3、nginx默认的路径/usr/local/nginx/html,也可以在server中配置其他的绝对路径,不必须是 在内部的html目录中
3.work目录
[root@001 work]# tree .└── Catalina└── localhost├── docs│ └── org│ └── apache│ └── WEB_002dINF│ └── jsp│ ├── _403_jsp.class│ └── _403_jsp.java├── examples├── host-manager├── manager├── myweb│ └── org│ └── apache│ └── jsp│ ├── a_jsp.class│ └── a_jsp.java└── ROOT└── org└── apache└── jsp├── index_jsp.class└── index_jsp.java19 directories, 6 files1、将jsp还原成java和class文件2、保存的路径/usr/local/tomcat/work/Catalina/localhost/myweb/org/apache/jsp/xxx.java3、将jsp文件自动解析为java文件,不需要重启服务器
4.logs目录
[root@001 logs]# ls -l 总用量 32-rw-r-----. 1 root root 9069 8月 1 15:12 catalina.2024-08-01.log-rw-r-----. 1 root root 9069 8月 1 15:12 catalina.out-rw-r-----. 1 root root 414 8月 1 14:12 localhost.2024-08-01.log-rw-r-----. 1 root root 1096 8月 1 15:16 localhost_access_log.2024-08 01.txt1、日志文档2、catalina.log3、localhost.log4、都有相应的日期
5.conf目录
[root@001 conf]# ls -l 总用量 232drwxr-x---. 3 root root 23 8月 1 14:12 Catalina-rw-------. 1 root root 12926 7月 8 05:02 catalina.policy-rw-------. 1 root root 7693 7月 8 05:02 catalina.properties-rw-------. 1 root root 1411 7月 8 05:02 context.xml-rw-------. 1 root root 1149 7月 8 05:02 jaspic-providers.xml-rw-------. 1 root root 2313 7月 8 05:02 jaspic-providers.xsd-rw-------. 1 root root 4144 7月 8 05:02 logging.properties-rw-------. 1 root root 7126 7月 8 05:02 server.xml-rw-------. 1 root root 2756 7月 8 05:02 tomcat-users.xml-rw-------. 1 root root 2558 7月 8 05:02 tomcat-users.xsd-rw-------. 1 root root 172780 7月 8 05:02 web.xml[root@001 conf]# vim server.xml

[root@001 conf]# vim web.xml
6.lib目录
[root@001 lib]# ls //存放依赖文件 annotations-api.jar tomcat-dbcp.jar catalina ant.jar tomcat-i18n-cs.jarcatalina-ha.jar tomcat-i18n-de.jar catalina.jar tomcat-i18n-es.jarcatalina-ssi.jar tomcat-i18n-fr.jar catalina storeconfig.jar tomcat-i18n-ja.jarcatalina-tribes.jar tomcat-i18n-ko.jar ecj-4.27.jar tomcat-i18n-pt-BR.jarel-api.jar tomcat-i18n-ru.jar jakartaee migration-1.0.8-shaded.jar tomcat-i18n-zh-CN.jarjasper-el.jar tomcat-jdbc.jar jasper.jar tomcat-jni.jarjaspic-api.jar tomcat-util.jar jsp-api.jar tomcat-util-scan.jarservlet-api.jar tomcat-websocket.jar tomcat api.jar websocket-api.jar tomcat-coyote-ffm.jar websocket-client-api.jar tomcat coyote.jar 1、tomcat运行中为项目提供的依赖文件 2、要访问
7.temp目录
[root@001 temp]# ls //存放临时文件 safeToDelete.tmp
4.脚本安装jdk环境和tomcat网站
[root@001 ~]# vim jdk.sh #!/bin/bashtar -zxvf jdk22.tar_\(1\).gzmv jdk-22.0.2/ /usr/local/jdk22sed -i '$a export JAVA_HOME=/usr/local/jdk22/' /etc/profilesed -i '$a export PATH=$JAVA_HOME/bin:$PATH' /etc/profilesource /etc/profilejava -versiontar -zxvf apache-tomcat-10.1.26.tar.gzmv apache-tomcat-10.1.26 /usr/local/tomcat//usr/local/tomcat/bin/startup.shnetstat -lntup | grep javatail -f /usr/local/tomcat/logs/catalina.2024-08-01.log[root@001 ~]# ssh-keygen [root@001 ~]# ssh-copy-id root@10.0.0.30[root@001 ~]# ssh-copy-id root@10.0.0.40[root@001 ~]# scp /root/jdk.sh root@10.0.0.30:/root/[root@001 ~]# scp /root/jdk.sh root@10.0.0.40:/root/[root@002 ~]# sh jdk.sh [root@003 ~]# sh jdk.sh
[root@001 ~]# echo "i am dynamic jsp java server page, nameber is 001" > /usr/local/tomcat/webapps/ROOT/index.jsp[root@002 ~]# echo "i am dynamic jsp java server page, nameber is 002" > /usr/local/tomcat/webapps/ROOT/index.jsp[root@003 ~]# echo "i am dynamic jsp java server page, nameber is 003" > /usr/local/tomcat/webapps/ROOT/index.jsp
5.nginx代理tomcat服务
[root@server ~]# cd /usr/local/nginx/[root@server nginx]# cd conf.d/[root@server conf.d]# cp eleme.conf ele.conf[root@server conf.d]# lsbaibai.conf ele.conf eleme.conf[root@server conf.d]# vim ele.confserver {listen 80;server_name www.ele.com;location / {proxy_pass http://ele_group;}}[root@server conf.d]# cd /usr/local/nginx/conf/[root@server conf]# vim nginx.confhttp {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;upstream ele_group{server 10.0.0.20:8080;server 10.0.0.30:8080;server 10.0.0.40:8080;}include ../conf.d/*.conf;[root@server conf]# /usr/local/nginx/sbin/nginx在C:\Windows\System32\drivers\etc下的hosts文件中添加:10.0.0.10 www.ele.com
错误解决:
[root@server conf.d]# vim ele.conf
proxy_pass http://elegroup; //去掉下划线
[root@server conf]# vim nginx.conf
upstream elegroup{} //去掉下划线
6.数据库
1.关系型数据库
1.oracel
2.mysql
1.安装和配置
2.sql语句
3.优化
4.备份和安全
5.集群(主从,一主多从,增删改查,从服务负责mysql查询 )
3.sql-server
2.非关系型数据库
1.redis
2.cached
3.mongodb
相关文章:
第十九次(安装nginx代理tomcat)
回顾 1.安装nodejs---jdk一样你的软件运行环境 yum -y list install|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 ins…...
小红书0510笔试-选择题
Cache-Control:这是一个用于定义缓存行为的头部字段,它可以设定多个值来控制缓存的各个方面,如“public”、“private”、“no-cache”、“max-age”等。虽然Cache-Control的max-age指令可以指定缓存项的有效期,但它并不直接标识资…...
3.Java面试题之AQS
1. 写在前面 AQS(AbstractQueuedSynchronizer)是Java并发包(java.util.concurrent)中的一个抽象类,用于实现同步器(如锁、信号量、栅栏等)。AQS提供了一种基于FIFO队列的机制来管理线程的竞争和…...
redis的集群(高可用)
redis集群的三种模式: 主从复制 奇数 三台 一主两从 哨兵模式 3 一主两从 cluster集群 六台 主从复制:和mysql的主从复制类似,主可以写,写入主的数据通过RDB方式把数据同步到从服务器,从不能更新到主,也…...
随机森林的算法
1、随机森林算法简介 随机森林算法(Random Forests)是LeoBreiman于2001年提出的,它是一种通过重采样办法从原始训练样本集中有放回地重复随机抽取若干个样本生成多个决策树,样本的最终预测值由这些决策树的结果投票决定的一种有监督集成学习模型。 其核…...
3.1、数据结构-线性表
数据结构 数据结构线性结构线性表顺序存储和链式存储区别单链表的插入和删除练习题 栈和队列练习题 串(了解) 数据结构 数据结构该章节非常重要,上午每年都会考10-12分选择题下午一个大题 什么叫数据结构?我们首先来理解一下什…...
记一次对HTB:Carpediem的渗透测试
信息收集 端口扫描 通过nmap对靶机端口进行探测,发现存在22和80端口。 访问web页面。发现是一个静态页面,没有可利用的部分。 目录扫描 子域枚举 通过对域名进行fuzz子域名,发现存在portal一级域名。 将它加入/etc/hosts,访问之…...
MATH2 数据集:AI辅助生成高挑战性的数学题目
随着大型语言模型(LLMs)在理解和生成复杂数学内容方面的能力显著提高,通过利用所有公开数据以及相当一部分私有数据,已经取得了进展。然而,高质量、多样化和具有挑战性的数学问题来源正在逐渐枯竭。即使是寻找新的评估…...
加密货币“蓄势待发”!美国松口降息!九月开始连续降息8次?2025年利率目标3.25-3.5%?
今晨,美国联准会(Fed)结束FOMC会议,一如市场预期第八度冻涨利率在5.25%-5.5%。不过主席鲍威尔(Jerome Powell)在会后的记者会访出鸽派讯号,暗示9月降息脚步将近。这一消息令金融市场顿时沸腾,美股全面大涨&…...
Vue.js 3.x 必修课|005|代码规范与 ESLint 入门
欢迎关注公众号:CodeFit 创作不易,如果你觉得这篇文章对您有帮助,请不要忘了 点赞、分享 和 关注,为我的 持续创作 提供 动力! 1. 代码规范的重要性 在现代软件开发中,代码规范扮演着至关重要的角色。 特别是在团队协作的环境中,统一的代码风格可以大大提高工作效率和…...
【Linux】动态库|静态库|创建使用|动态库加载过程
目录 编辑 前言 静态库 为什么要使用库(形成原理 ) 生成一个静态库 静态库的使用 动态库 生成一个动态库 动态库的使用 解决方法 动态库加载过程 编辑 前言 库(Library)是一种方式,可以将代码打包成可重用的格式(站…...
WebSocket 协议与 HTTP 协议、定时轮询技术、长轮询技术
目录 1 为什么需要 WebSocket?2 WebSocket2.1 采用 TCP 全双工2.2 建立 WebSocket 连接2.3 WebSocket 帧 3 WebSocket 解决的问题3.1 HTTP 存在的问题3.2 Ajax 轮询存在的问题3.3 长轮询存在的问题3.4 WebSocket 的改进 参考资料: 为什么有 h…...
二叉树节点问题
问题:设一棵二叉树中有3个叶子结点,有8个度为1的结点,则该二叉树中总的结点数为( 13)个 设某种二叉树有如下特点:每个结点要么是叶子结点,要么有2棵子树。假如一棵这样的二叉树中有m(m>0&…...
公司里的IT是什么?
公司里的IT是什么? 文章目录 公司里的IT是什么?1、公司里的IT2、IT技术3、IT行业4、IT行业常见证书 如果对你有帮助,就点赞收藏把!(。・ω・。)ノ♡ 前段时间,在公…...
【小程序爬虫入门实战】使用Python爬取易题库
文章目录 1. 写在前面2. 抓包分析 【🏠作者主页】:吴秋霖 【💼作者介绍】:擅长爬虫与JS加密逆向分析!Python领域优质创作者、CSDN博客专家、阿里云博客专家、华为云享专家。一路走来长期坚守并致力于Python与爬虫领域研…...
案例 —— 怪物出水
一,Ocean Setup 设置海洋Surface Grid(使用Large Ocean工具架) 调节默认Grid的大小尺寸及细分(使用非常小尺寸来测试);调整频谱输入点的多少,频谱Grid Size,波浪方向,速度…...
vue中使用print.js实现页面打印并增加水印
1.安装print.js npm install print-js --save2.在main.js文件中引入并注册(我使用的是print.js的源码文件,并且做了一修改) //引入 import Print from ./utils/print//注册 Vue.use(Print); //注册3.在页面中使用 <template> <div class&quo…...
计算机基础(Windows 10+Office 2016)教程 —— 第5章 文档编辑软件Word 2016(下)
文档编辑软件Word 2016 5.4 Word 2016的表格应用5.4.1 创建表格5.4.2 编辑表格5.4.3 设置表格 5.5 Word 2016的图文混排5.5.1 文本框操作5.5.2 图片操作5.5.3 形状操作5.5.4 艺术字操作 5.6 Word 2016的页面格式设置5.6.1 设置纸张大小、页面方向和页边距5.6.2 设置页眉、页脚和…...
简单洗牌算法
🎉欢迎大家收看,请多多支持🌹 🥰关注小哇,和我一起成长🚀个人主页🚀 ⭐目前主更 专栏Java ⭐数据结构 ⭐已更专栏有C语言、计算机网络⭐ 在学习了ArrayList之后,我们可以通过写一个洗…...
JVM: 堆上的数据存储
文章目录 一、对象在堆中的内存布局1、对象在堆中的内存布局 - 标记字段2、JOL打印内存布局 二、元数据指针 一、对象在堆中的内存布局 对象在堆中的内存布局,指的是对象在堆中存放时的各个组成部分,主要分为以下几个部分: 1、对象在堆中的…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
ABAP设计模式之---“简单设计原则(Simple Design)”
“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
论文笔记——相干体技术在裂缝预测中的应用研究
目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术:基于互相关的相干体技术(Correlation)第二代相干体技术:基于相似的相干体技术(Semblance)基于多道相似的相干体…...
