第十九次(安装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、对象在堆中的…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...

springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...

html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...

搭建DNS域名解析服务器(正向解析资源文件)
正向解析资源文件 1)准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2)服务端安装软件:bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

在 Spring Boot 中使用 JSP
jsp? 好多年没用了。重新整一下 还费了点时间,记录一下。 项目结构: pom: <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://ww…...

实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...
ubuntu22.04 安装docker 和docker-compose
首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...

基于江科大stm32屏幕驱动,实现OLED多级菜单(动画效果),结构体链表实现(独创源码)
引言 在嵌入式系统中,用户界面的设计往往直接影响到用户体验。本文将以STM32微控制器和OLED显示屏为例,介绍如何实现一个多级菜单系统。该系统支持用户通过按键导航菜单,执行相应操作,并提供平滑的滚动动画效果。 本文设计了一个…...