第十九次(安装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、对象在堆中的…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
