培训第十九天(安装nginx代理tomcat)

news2025/1/16 14:07:22

上午

1、构建vue发行版本

 [root@server ~]# cd eleme_web/
 [root@server eleme_web]# npm run buid    //项目未执行时运行该命令,创建发行版本

 [root@server eleme_web]# cd dist/     //dist中包含发行版本的所有文件
 [root@server dist]# ls
 css  favicon.ico  img  index.html  js  nohup.out
 [root@server dist]# vim index.html

 [root@server eleme_web]# nohup npm run serve&    //运行vue项目
 [root@server eleme_web]# mkdir /eleme
 [root@server eleme_web]# cp -r /root/eleme_web/dist/* /eleme/     //将项目整体移动到/eleme目录下
 [root@server eleme_web]# cd /usr/local/nginx/conf.d
 [root@server conf.d]# cp baibai.conf eleme.conf
 [root@server conf.d]# vim eleme.conf    //编辑.conf文件
    server {
               listen  80;
               server_name   www.eleme.com;
               root    /eleme;
               location  /  {
                        index   index.html;
               }
     }
 [root@server conf.d]# /usr/local/nginx/sbin/nginx
 在windows中的C:\Windows\System32\drivers\etc路径下的hosts文件中添加:10.0.0.10 www.eleme.com
 用浏览器访问www.eleme.com

2、java环境配置

jdk软件包路径:

https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.tar.gz

 [root@001 ~]# tar -zxvf jdk22.tar_\(1\).gz 
 [root@001 ~]# mv jdk-22.0.2/ /usr/local/jdk22
 [root@001 ~]# vim /etc/profile
 export JAVA_HOME=/usr/local/jdk22/
 export PATH=$JAVA_HOME/bin:$PATH
 [root@001 ~]# source /etc/profile    //运行profile
 [root@001 ~]# java      //测试
 用法:java [options] <mainclass> [args...]
            (执行类)
    或  java [options] -jar <jarfile> [args...]
            (执行 jar 文件)
    或  java [options] -m <module>[/<mainclass>] [args...]
        java [options] --module <module>[/<mainclass>] [args...]
            (执行模块中的主类)
    或  java [options] <sourcefile> [args]
            (执行源文件程序)
 [root@001 ~]# java -version   //测试
 java version "22.0.2" 2024-07-16
 Java(TM) SE Runtime Environment (build 22.0.2+9-70)
 Java HotSpot(TM) 64-Bit Server VM (build 22.0.2+9-70, mixed mode, sharing)

下午

1、安装tomcat软件

tomcat软件包路径:

https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-tomcat-10.1.26.tar.gz

 [root@001 ~]# tar -zxvf apache-tomcat-10.1.26.tar.gz
 [root@001 ~]# mv apache-tomcat-10.1.26 /usr/local/tomcat/
 [root@001 ~]# ls /usr/local/tomcat/
 bin           CONTRIBUTING.md  logs       RELEASE-NOTES  webapps
 BUILDING.txt  lib              NOTICE     RUNNING.txt    work
 conf          LICENSE          README.md  temp
 [root@001 ~]# /usr/local/tomcat/bin/startup.sh  //开启tomcat服务
 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@001 ~]# netstat -lntup | grep java
 tcp6       0      0 127.0.0.1:8005          :::*                    LISTEN      1273/java           
 tcp6       0      0 :::8080                 :::*                    LISTEN      1273/java 

 [root@001 ~]# cd /usr/local/tomcat/logs/
 [root@001 logs]# tail -f catalina.2024-08-01.log   //查看你是否启动成功
 [root@001 logs]# tail -f localhost.2024-08-01.log
 [root@001 ~]# /usr/local/tomcat/bin/shutdown.sh  //停用tomcat服务
 [root@001 tomcat]# ls
 bin   logs   webapps  lib   work   conf   temp

2、tomcat目录介绍

(1)bin目录

 [root@001 bin]# ls
 bootstrap.jar                 daemon.sh         shutdown.sh
 catalina.bat                  digest.bat        startup.bat
 catalina.sh                   digest.sh         startup.sh
 catalina-tasks.xml            makebase.bat      tomcat-juli.jar
 ciphers.bat                   makebase.sh       tomcat-native.tar.gz
 ciphers.sh                    migrate.bat       tool-wrapper.bat
 commons-daemon.jar            migrate.sh        tool-wrapper.sh
 commons-daemon-native.tar.gz  setclasspath.bat  version.bat
 configtest.bat                setclasspath.sh   version.sh
 configtest.sh                 shutdown.bat
 1、含有多个可执行文件,这些可执行文件在window和linux中是通用
 2、win10上优化之后上传到linux,只需要添加权限就可以了
 3、win对应的的文件的扩展名为bat(批处理文件)
 4、linux对应的文件的扩展名为sh
 5、startupsh.sh启动服务,shutdown.sh停止服务

(2)webapps目录

 [root@001 tomcat]# cd webapps/
 [root@001 webapps]# mkdir myweb
 [root@001 myweb]# vim 1.txt
 i am jsp
 ......
 i am jsp
 [root@001 webapps]# vim myweb/a.jsp 
 i am jsp
 ......
 i am jsp
 ......
 <%=3+4 %>
 [root@001 webapps]# ls
 docs  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.java
 ​
 19 directories, 6 files
 1、将jsp还原成java和class文件
 2、保存的路径/usr/local/tomcat/work/Catalina/localhost/myweb/org/apache/jsp/xxx.java
 3、将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.txt
 1、日志文档
 2、catalina.log
 3、localhost.log
 4、都有相应的日期

(5)conf目录

 [root@001 conf]# ls -l
 总用量 232
 drwxr-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.jar
 catalina-ha.jar                       tomcat-i18n-de.jar         catalina.jar                          tomcat-i18n-es.jar
 catalina-ssi.jar                      tomcat-i18n-fr.jar         catalina-storeconfig.jar              tomcat-i18n-ja.jar
 catalina-tribes.jar                   tomcat-i18n-ko.jar         ecj-4.27.jar                          tomcat-i18n-pt-BR.jar
 el-api.jar                            tomcat-i18n-ru.jar         jakartaee-migration-1.0.8-shaded.jar  tomcat-i18n-zh-CN.jar
 jasper-el.jar                         tomcat-jdbc.jar            jasper.jar                            tomcat-jni.jar
 jaspic-api.jar                        tomcat-util.jar            jsp-api.jar                           tomcat-util-scan.jar
 servlet-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

3、脚本安装jdk环境和tomcat网站

 [root@001 ~]# vim jdk.sh 
 #!/bin/bash
 tar -zxvf jdk22.tar_\(1\).gz
 mv jdk-22.0.2/ /usr/local/jdk22
 sed -i '$a export JAVA_HOME=/usr/local/jdk22/' /etc/profile
 sed -i '$a export PATH=$JAVA_HOME/bin:$PATH' /etc/profile
 source /etc/profile
 java -version
 tar -zxvf apache-tomcat-10.1.26.tar.gz
 mv apache-tomcat-10.1.26 /usr/local/tomcat/
 /usr/local/tomcat/bin/startup.sh
 netstat -lntup | grep java
 tail -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

4、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]# ls
 baibai.conf  ele.conf  eleme.conf
 [root@server conf.d]# vim ele.conf
  server {
               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.conf
 http {
     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{}       //去掉下划线

5、数据库

(1)关系型数据库

1、oracel

2、mysql

     1、安装和配置

     2、sql语句

     3、优化

     4、备份和安全

     5、集群

              1、主从

              2、一主多从

              3、增删改主机

             4、从服务负责mysql查询

3、sql-server

(2)非关系型数据库

1、redis

2、cached

3、mongodb

准备:mysql 2台 8.33版本

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

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

相关文章

git创建远程仓库

注册 请自行注册github账号 创建远程仓库 自己在上图那里可以创建一个远程仓库 克隆远程仓库 我们需要将远程仓库克隆到本地之后&#xff0c;在本地修改最后上传到远程仓库&#xff0c;关系如下&#xff1a; 由于我们的仓库是私密仓库&#xff0c;需要通过ssh密钥的方法才…

day19(安装nginx代理 + tomcat)

1、构建vue发行版本 [rootserver ~]# cd eleme_web/ [rootserver eleme_web]# npm run buid //项目未执行时运行该命令&#xff0c;创建发行版本 [rootserver eleme_web]# cd dist/ //dist中包含发行版本的所有文件 [rootserver dist]# ls css favicon.ico img index…

⌈ 传知代码 ⌋ 基于矩阵乘积态的生成模型

&#x1f49b;前情提要&#x1f49b; 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间&#xff0c;对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…

SQL语句分类;查看MySQL存储引擎

文章目录 SQL语句分类查看MySQL存储引擎存储引擎对比 SQL语句分类 数据本身权限&#xff1a;定义 修改 DDL【data definition language】 数据定义语言&#xff0c;用来维护存储数据的结构 代表指令: create, drop, alterDML【data manipulation language】 数据操纵语言&…

第十九天内容

上午 1、构建vue发行版本 2、java环境配置 jdk软件包路径&#xff1a; https://download.oracle.com/java/22/latest/jdk-22_linux-x64_bin.tar.gz 下午 1、安装tomcat软件 tomcat软件包路径&#xff1a; https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.26/bin/apache-to…

水库大坝安全自动监测系统位移测点布设

水库大坝安全自动监测系统中的位移测点布设是大坝安全监测的重要环节&#xff0c;其目的是为了及时、准确地获取大坝的位移信息&#xff0c;评估大坝的稳定性&#xff0c;确保大坝的安全运行。位移测点的布设需要综合考虑大坝的结构特点、地质条件、运行工况及监测需求等多方面…

tomcat多实例配置-Linux(CentOS)

多实例配置 一、安装 tomcat二、多实例配置 tomcat 官网 tomcat 安装包下载地址 一、安装 tomcat 解压tomcat压缩包到 /usr/local 下 tar xf apache-tomcat-*.gz -C /usr/local/# 可选 添加一个软链接&#xff0c;方便查找 ln -s /usr/local/apache-tomcat-* /usr/local/tom…

python实现发票信息识别和处理

公司需要发票报销&#xff0c;一定周期的发票攒在一起&#xff0c;处理报销单特别繁琐&#xff0c;遂萌生用python简化报销流程。 明确需求 公司报销单需要发票代码(短码)&#xff0c;金额&#xff0c;总计金额&#xff0c;如下图 开始编码 首先需要一个读取pdf的类库 pdf…

AEAD:AES-CCM简介

目录 1. CCM模式 2.认证加密过程 3.校验解密过程 1. CCM模式 CCM&#xff08;Counter with CBC-MAC&#xff09; 首先使用 CBC-MAC 来保证数据完整性和真实性&#xff0c;然后使用 CTR 模式来保证数据机密性。 在CCM中&#xff0c;受保护的数据被称为payload&#xff0c;简…

虚拟机(CentOS7)安装gitlab

GitLab官方安装教程 链接&#xff1a;https://gitlab.cn/install/ 1、关闭虚拟机防火墙 # 关闭防火墙命令 systemctl stop firewalld # 查看当前防火墙的状态信息 systemctl status firewalld成功关闭 2、GitLab安装包下载 # windows下载地址&#xff1a; https://mirrors.t…

JVM—对象已死?

在堆里面存放着 Java 世界中几乎所有的对象实例,垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象之中哪些还“存活”着,哪些已经“死去”。 1、如何判断对象存活 1.1 引用计数法 给对象增加一个引用计数器&#xff0c;当对象被引用一次计数器加一、当引用失效时计数…

深入源码P3C-PMD:使用流程(1)

PMD开源组件启动流程介绍 在软件开发领域&#xff0c;代码质量是项目成功的关键因素之一。为了提升代码质量&#xff0c;开发者们常常借助各种工具进行代码分析和检查。PMD作为一款开源的静态代码分析工具&#xff0c;在Java、JavaScript、PLSQL等语言项目中得到了广泛应用。本…

虚拟主机与vue项目、samba磁盘映射、nfs共享

1、复习 &#xff08;1&#xff09;tomcat服务器需要jdk环境 版本对应 tomcat9》jdk1.8 tomcat10》jdk17 配置系统变量JAVA_HOME sed -i $a export JAVA_HOME/usr/local/jdk22/ /etc/profile sed -i $a export PATHJAVA_HOME/bin:$PATH /etc/profile source /etc/profile…

基于FPGA的出租车计费系统设计---第一版--郝旭帅电子设计团队

欢迎各位朋友关注“郝旭帅电子设计团队”&#xff0c;本篇为各位朋友介绍基于FPGA的出租车计费系统设计—第一版 功能说明&#xff1a; 收费标准&#xff08;里程&#xff09;&#xff1a;起步价5元&#xff0c;包括三公里&#xff1b;三公里之后&#xff0c;每公里2元&#x…

JVM: 堆上的数据存储

文章目录 一、对象在堆中的内存布局1、对象在堆中的内存布局 - 标记字段2、JOL打印内存布局 二、元数据指针 一、对象在堆中的内存布局 对象在堆中的内存布局&#xff0c;指的是对象在堆中存放时的各个组成部分&#xff0c;主要分为以下几个部分&#xff1a; 1、对象在堆中的…

Java SpringTask定时自动化处理

目录 一、自动化处理 1.1 什么是自动化处理 1.2 SpringTask介绍 二、SpringTask的基本使用 2.1 引入依赖 2.2 通过控制台加入注解启用SpringTask 2.3 使用Cron表达式规定时间 2.4 通过Schedule(Cron表达式) 实现定时任务&#xff08;每两秒执行一次&#xff09; 三、实…

【完美解决】 TypeError: ‘str’ object does not support item assignment

【完美解决】 TypeError: ‘str’ object does not support item assignment 在Python编程中&#xff0c;遇到TypeError: str object does not support item assignment这样的错误通常意味着你试图修改字符串中的某个字符&#xff0c;但字符串是不可变类型&#xff0c;不支持这…

【每日一题 | 组成原理】补码溢出判断

题目 题型总结 带符号的定点数表示方式有4种&#xff0c;分别是原码、反码、补码和移码&#xff0c;他们都由两部分组成&#xff0c;分别是符号位和数值位&#xff0c;这四种编码方式非常重要&#xff0c;要熟练掌握他们之间的转换和与真值间的转换。这里我们重点看一下补码&a…

408-部分知识点笔记(自用)

一、操作系统部分 1.内中断&#xff08;异常&#xff09;和外中断&#xff08;中断&#xff09; 1.1 异常&#xff08;内中断&#xff09; 异常就是指CPU内部发生的中断&#xff0c;与当前正在执行的程序有关。类似的内中断有&#xff1a;缺页中断、算法溢出、除以0错误、存…

可视化目标检测算法推理部署(三)YOLOv8模型视频推理

在上一章节中博主利用Gradio完成了YOLOv8模型的图像推理&#xff0c;那么在本章节中将进行视频推理&#xff0c;其代码十分简单&#xff0c;只需要将原本的视频切分为一帧帧图像再去检测即可&#xff0c;代码如下&#xff1a; def detectio_video(input_path):output_path&quo…