Linux之项目部署与发布

目录

一、Nginx配置安装(自启动)

1.一键安装4个依赖

2. 下载并解压安装包

3. 安装Nginx

4. 启动 nginx 服务

5. 对外开放端口

6. 配置开机自启动

7.修改/etc/rc.d/rc.local的权限

二、后端部署tomcat负载均衡

1. 准备2个tomcat

2. 修改端口

3. 启动两个tomcat

4.Nginx配置  

三、前端部署


一、Nginx配置安装(自启动)

1.一键安装4个依赖

yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

2. 下载并解压安装包

wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -xvf nginx-1.13.7.tar.gz -C /usr/local/java/

3. 安装Nginx

(1)进入安装包目录

cd nginx-1.13.7

(2)安装ssl证书

./configure --with-http_stub_status_module --with-http_ssl_module

(3)安装编译

make && make install

4. 启动 nginx 服务

安装好的 nginx 服务在 /usr/local/nginx 下:

进入 /usr/local/nginx/sbin 目录下启动:

启动:./nginx

重启:./nginx -s reload

关闭:./nginx -s stop

下载lsof命令:yum install -y lsof

查看端口:lsof -i:端口号、kill -9 pid

5. 对外开放端口

(1)开放端口

firewall-cmd --zone=public --add-port=80/tcp --permanent

(2)更新防火墙规则

firewall-cmd --reload

(3)防火墙列表
firewall-cmd --zone=public --list-ports

6. 配置开机自启动

vim /etc/rc.d/rc.local
/usr/local/nginx/sbin/nginx

7.修改/etc/rc.d/rc.local的权限

cd /etc/rx.d/
chom 755 rc.local

二、后端部署tomcat负载均衡

负载均衡

1. 准备2个tomcat

cp -r apache-tomcat-8.5.20/ apache-tomcat-8.5.20-8081/

2. 修改端口

vim service.xml

1. HTTP端口,默认8080,如下改为8081


2.远程停服务端口,默认8005,如下改为8006


3.AJP端口,默认8009,如下改,8010

3. 启动两个tomcat

要开放8081的端口:

firewall-cmd --zone=public --add-port=8081/tcp --permanent

4.Nginx配置  

(1) 进入nginx.conf

(2)添加

upstream  tomcat_list {  #服务器集群名字
    server    127.0.0.1:8080  weight=1;   #服务器1   weight是权重的意思,权重越大,分配的概率越大。
    server    127.0.0.1:8081  weight=1; #服务器2   weight是权重的意思,权重越大,分配的概率越大

 # index  index.html index.htm;

proxy_pass   http://tomcat_list;

(3)重启Nginx服务,让配置生效

systemct restart nginx

或者进入 /usr/local/nfinx/sbin 目录下重启

./nginx -s reload

(4)测试Nginx负载2个tomcat的效果

来回切换tomcat:8080/8081两个服务器的内容

停掉一个tomcat发现还是可以访问项目

停掉2个tomcat发现不可以访问项目

(5)将后台接口对用的项目进行上传部署

tomcat-8080/webapps上传项目并启动

tomcat-8081/webapps上传项目并启动

(6)后台项目部署成功测试

保障以下3个链接都能访问项目:

http://192.168.174.132:8080/T216_SSH/vue/treeNodeAction.action
http://192.168.174.132:8081/T216_SSH/vue/treeNodeAction.action
http://192.168.174.132/T216_SSH/vue/treeNodeAction.action

三、前端部署

1. 解压前端

在/usr/local下创建一个文件夹并进入,把项目前端放到里面,再解压

[root@localhost bin]# cd /usr/local
[root@localhost local]# mkdir mypro
[root@localhost local]# cd mypro/

解压要使用unzip命令,要下载,输入:

yum install -y unzip

再进行解压:

unzip blog.zip

2. ip域名映射

C:\Windows\System32\drivers\etc\hosts中增加映射关系

3.Nginx配置文件修改

打开nginx.conf

server {listen       80;            #监听80端口,可以改成其他端口#server_name  localhost;    #当前服务的域名server_name  www.zking.com; #当前服务的域名(虚拟域名也可以)root         /usr/local/mypro/dist;      #将要访问的网站的根目录,nginx节点会自动继承父节点的配置#charset koi8-r;#access_log  logs/host.access.log  main;location / {#该句代码是为解决history路由不能跳转的问题,在vue-router官网有介绍 try_files $uri $uri/  /index.html;}location  ^~/api/ {#^~/api/表示匹配前缀是api的请求,proxy_pass的结尾有/, 则会把/api/*后面的路径直接拼接到后面,即移除apiproxy_pass http://tomcat_list/;}

4.重启nginx服务

[root@localhost conf]# cd ../sbin
[root@localhost sbin]# ./nginx -s reload

去浏览器登录:端口号

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

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

相关文章

4.寻找两个正序数组的中位数

题目:给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 解题思路:用二分法查找。使用归并的方式,合并两个有序数组,得到一个大的有序数组。大的…

树状数组与线段树<2>——线段树初步

这个系列终于更新了(主要因为树状数组初步比较成功) 话不多说,切入正题。 什么是线段树? 线段树是一种支持单点修改区间查询(树状数组也行) and 区间修改单点查询(树状数组不行) and 区间修改区间查询(树状数组更不行)的高级数据结构,相当…

Spring Boot利用Kaptcha生成验证码

生成验证码 我们在登录或注册某个网站的时候,会需要我们输入验证码,才能登录注册,那么如何生成验证码呢?其实,生成验证码我们可以用Java Swing在后台内存里的区域画一个出来,但是非常麻烦,所以…

在IDEA中创建vue hello-world项目

工作中最近在接触vue前端项目,记录一下从0搭建一个vue hello world项目的步骤 1、本地电脑安装配置node、npm D:\Project\vue\hello-world>node -v v14.21.3 D:\Project\vue\hello-world>npm -v 6.14.18 D:\Project\vue\hello-world> 2、设置npm国内淘宝的景象 …

unity学习(41)——创建(create)角色脚本(panel)——UserHandler(收)+CreateClick(发)——发包!

1.客户端的程序结构被我精简过,现在去MessageManager.cs中增加一个UserHandler函数,根据收到的包做对应的GameInfo赋值。 2.在Model文件夹下新增一个协议文件UserProtocol,内容很简单。 using System;public class UserProtocol {public co…

涵盖5大领域的机器学习工具介绍

随着数据的产生及其使用量的不断增加,对机器学习模型的需求也在成倍增加。由于ML系统包含了算法和丰富的ML库,它有助于分析数据和做出决策。难怪机器学习的知名度越来越高,因为ML应用几乎主导了现代世界的每一个方面。随着企业对这项技术的探…

Java中PDF文件传输有哪些方法?

专栏集锦,大佬们可以收藏以备不时之需: Spring Cloud 专栏:http://t.csdnimg.cn/WDmJ9 Python 专栏:http://t.csdnimg.cn/hMwPR Redis 专栏:http://t.csdnimg.cn/Qq0Xc TensorFlow 专栏:http://t.csdni…

记录一些mac电脑重装mysql和pgsql的坑

为什么要重装,是想在mac电脑 创建data目录…同事误操作,导致电脑重启不了.然后重装系统后,.就连不上数据库了.mysql和pgsql两个都连不上.网上也查了很多资料.实在不行,.就重装了… 重装mysql. 1.官网下载 https://www.mysql.com/downloads/ 滑到最下面 选择 选择对应的芯片版本…

设计推特(Leetcode355)

例题: https://leetcode.cn/problems/design-twitter/ 分析: 推特其实类似于微博,在微博中可以发送文章。 求解这类题目,我们需要根据题目需求,利用面向对象的思想,先对需求做一个抽象,看看能…

字符串(算法竞赛)--Manacher(马拉车)算法

1、B站视频链接&#xff1a;F05 Manacher(马拉车)_哔哩哔哩_bilibili 题目链接&#xff1a;【模板】manacher - 洛谷 ​ #include <bits/stdc.h> using namespace std; const int N3e7; char a[N],s[N]; int d[N];//回文半径函数void get_d(char*s,int n){d[1]1;for(int…

领域驱动设计(Domain-Driven Design DDD)——通过重构找到深层次模型2

五、应用分析模式 深层模型和柔性设计并非唾手可得。想要取得进展&#xff0c;必须学习大量领域知识并进行充分的讨论&#xff0c;还需要经历大量的尝试和失败。在实际的研究领域问题实践时&#xff0c;有一些成熟的模式可以供我们借鉴和套用。这样我们可以从这个起点来重构和试…

vim恢复.swp [BJDCTF2020]Cookie is so stable1

打开题目 扫描目录得到 关于 .swp 文件 .swp 文件一般是 vim 编辑器在编辑文件时产生的&#xff0c;当用 vim 编辑器编辑文件时就会产生&#xff0c;正常退出时 .swp 文件被删除&#xff0c;但是如果直接叉掉&#xff08;非正常退出&#xff09;&#xff0c;那么 .swp 文件就会…

spring-security 过滤器 (三)

spring-security过滤器 版本信息过滤器配置过滤器配置相关类图过滤器加载过程创建 HttpSecurity Bean 对象创建过滤器 过滤器作用ExceptionTranslationFilter 自定义过滤器 本章介绍 spring-security 过滤器配置类 HttpSecurity&#xff0c;过滤器加载过程&#xff0c;自定义过…

信息抽取(UIE):使用自然语言处理技术提升证券投资决策效率

一、引言 在当今快速变化的证券市场中&#xff0c;信息的价值不言而喻。作为一名资深项目经理&#xff0c;我曾领导一个关键项目&#xff0c;旨在通过先进的信息抽取技术&#xff0c;从海量的文本数据中提取关键事件&#xff0c;如企业并购、新产品发布以及政策环境的变动。这些…

Open CASCADE学习|几何数据结构

在几何引擎内一般把数据分成两类&#xff1a;几何信息与拓扑信息。二者可以完整地表达出实体模型&#xff0c;彼此相互独立、又互相关联。几何信息是指构成几何实体的各几何元素在欧式空间中的位置、大小、尺寸和形状信息。例如一条空间的直线&#xff0c;可以用两端点的位置矢…

五种多目标优化算法(MOCS、MOFA、NSWOA、MOAHA、MOPSO)性能对比(提供MATLAB代码)

一、5种多目标优化算法简介 多目标优化算法是用于解决具有多个目标函数的优化问题的一类算法。其求解流程通常包括以下几个步骤&#xff1a; 1. 定义问题&#xff1a;首先需要明确问题的目标函数和约束条件。多目标优化问题通常涉及多个目标函数&#xff0c;这些目标函数可能…

【人脸朝向识别与分类预测】基于BP神经网络

课题名称&#xff1a;基于BP神经网络的人脸朝向识别分类 版本日期&#xff1a;2024-02-20 运行方式&#xff1a;直接运行BP0503.m文件 代码获取方式&#xff1a;私信博主或 QQ:491052175 模型描述&#xff1a; 采集到一组人脸朝向不同角度时的图像&#xff0c;图像来自不同…

17.材质和外观

1.图形学中的材质 在图形学中&#xff0c;材质&#xff08;Material&#xff09;是用来描述物体外观和表面特性的属性集合。它包含了控制光的反射、折射、吸收以及其他光学效果的信息&#xff0c;从而决定了物体在渲染过程中的外观。 渲染方程中那一项和材质有关&#xff1f; …

c#高级-正则表达式

正则表达式是由普通字符和元字符&#xff08;特殊符号&#xff09;组成的文字形式 应用场景 1.用于验证输入的邮箱是否合法。 2.用于验证输入的电话号码是否合法。 3.用于验证输入的身份证号码是否合法。等等 正则表达式常用的限定符总结&#xff1a; 几种常用的正则简写表达式…

[VNCTF2024]-Web:CheckIn解析

查看网页 一款很经典的游戏&#xff0c;而且是用js写的 在调试器里面我们可以看见&#xff0c;如果游戏通关的话&#xff0c;它会进行一系列操作&#xff0c;包括使用console.log(_0x3d9d[0]);输出_0x3d9d[0]到控制台&#xff0c;那我们就直接在点击在控制台求出它的值