nginx 平滑升级

news2024/11/28 16:27:00

背景介绍

因为一些原因,比如说 Nginx 发现漏洞、应用一些新的模块等等,想对 Nginx 的版本进行更新,最简单的做法就是停止当前的 Nginx 服务,然后开启新的 Nginx 服务。但是这样会导致在一段时间内,用户是无法访问服务器,因此需要进行平滑升级。

源码下载

nginx 官网找到最新稳定版本。原先的版本为 nginx-1.18.0

http://nginx.org/en/download.html
# 安装编译后的路径 /usr/local/soft/nginx
mkdir -p /usr/local/soft && cd /usr/local/soft
wget http://nginx.org/download/nginx-1.22.1.tar.gz

解压源码

tar -xzvf nginx-1.22.1.tar.gz

旧版参数

查看当前版本启动参数,以便用于新版启动。

# 查看启动参数
/usr/local/soft/nginx/sbin/nginx -V

在这里插入图片描述

如上图得知,原先 nginx 的启动命令为

--prefix=/usr/local/soft/nginx --with-http_stub_status_module --with-http_ssl_module --add-module=/usr/local/soft/nginx/modules/nginx-upstream-fair-master --add-module=/usr/local/soft/nginx/modules/ngx_cache_purge-2.3

编译新版

确认是在新版源码目录下执行,如果不是则需要进入新版本源码目录。

cd /usr/local/soft/nginx-1.22.1 
# 对新版本 nginx 进行配置
./configure  --prefix=/usr/local/soft/nginx --with-http_stub_status_module --with-http_ssl_module --add-module=/usr/local/soft/nginx/modules/nginx-upstream-fair-master --add-module=/usr/local/soft/nginx/modules/ngx_cache_purge-2.3

在这里插入图片描述

接着进行 make,注意不是 make install,否则后果很严重

make

在这里插入图片描述

这样,最新版本 nginx 的目录下会多出来一个 objs 目录,如下图所示:

在这里插入图片描述

备份旧版

备份当前版本的 nginx。

mv /usr/local/soft/nginx/sbin/nginx /usr/local/soft/nginx/sbin/nginx.old

拷贝新版

将编译好的 objs 目录下的 nginx 文件,复制到 /usr/local/soft/nginx/sbin 目录。

 cp /usr/local/soft/nginx-1.22.1/objs/nginx /usr/local/soft/nginx/sbin/nginx

命令升级

make upgrade 命令升级。

cd /usr/local/soft/nginx-1.22.1 && make upgrade

检查验证

可看到版本已变为 1.22.1,并且过程中服务不中断。

 /usr/local/soft/nginx/sbin/nginx -v

在这里插入图片描述

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

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

相关文章

2023/3/10 Vue核心知识的学习- Vue - v-model双向绑定原理

https://www.jianshu.com/p/2682b5a26869 定义:vue中双向绑定就是指v-model指令,可以绑定一个响应式数据到视图,同时视图中变化能同步改变该值。 通过Object.defineProperty( )对属性设置一个set函数,当数据改变了就会来触发这个…

索引设计的一些小技巧(上)

文章目录 主键索引为频繁查询的字段建立索引避免为"大字段"建立索引选择区分度大的列作为索引尽量为ORDER BY 和 GROUP BY 后面的字段建立索引不要在条件中使用函数不要建立太多的索引频繁增删改的字段不要建立索引索引失效的常见场景主键索引 大家在设计主键的时候…

数据安全—数据完整性校验

1、数据安全保障三要素即 保密性 完整性、可用性机密性:要求数据不被他人轻易获取,需要进行数据加密。完整性:要求数据不被他人随意修改,需要进行签名技术可用性:要求服务不被他人恶意攻击,需要进行数据校验…

别再说前端导出excel麻烦了(xlsx插件用法)

如果是为了解决el-teable的固定列导出问题,直接移动至文章末 本文使用的插件按照指令(第一个为一起按照,下面的是独立按照) npm install --save xlsx file-saver或 npm install --save xlsx npm install --save file-saver表格…

【Thingsboard+ChirpStack+LoRaWAN 网关+LoRa节点】通讯过程

这里写目录标题 4.通讯流程图:5.thingsboard 集成 chirpstack 上下行通讯5.1上行消息:5.2下行信息:5.3 上行数据分析5.4 下行数据分析6.thingsboard中设备管理实现:lora节点、网关、lora server、以及物联网平台四部分的数据通讯 实验结果: 描述:在thingsboard中修改某个…

SpringBoot【基础篇】---- 基础配置

SpringBoot【基础篇】---- 基础配置1. 属性配置2. 配置文件分类3. yaml 文件4. yaml 数据读取1. 读取单一数据2. 读取全部数据3. 读取对象数据yaml 文件中的数据引用1. 属性配置 SpringBoot 通过配置文件 application.properties 就可以修改默认的配置,那咱们就先找…

【K哥爬虫普法】字节前高管,离职后入侵今日头条数据库,是阴谋、还是利诱?

案情介绍 2016年至2017年间,张洪禹、宋某、侯明强作为被告单位上海晟品网络科技有限公司主管人员,在上海市共谋采用技术手段抓取北京字节跳动网络技术有限公司(办公地点位于本市海淀区北三环西路43号中航广场)服务器中存储的视频数…

23模式--代理模式

本篇主要聊一些23中模型中的代理模式: 看一下百度百科的解释: 代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目…

Python连接MySQL实现增删改查详细教程

文章目录前言一、环境准备二、操作步骤1.安装Python依赖库2.创建测试数据表3. 编写操作数据库核心类4. 测试数据添加5. 测试数据删除6. 测试数据更新7. 测试数据查询三、完整代码总结前言 Python语言经过了很多年的发展,生态非常丰富,热度只增不减&…

微搭问搭001-如何清空表单的数据

韩老师,我点关闭按钮后,弹窗从新打开,里面的数据还在,这个可以从新打开清除不? 点关闭的时候清掉 就是清楚不掉也?咋清掉 清掉表单内容有属性可以做到? $page.widgets.id**.value “” 就可以实…

HCIP-5.4OSPF路由聚合、缺省路由

1、路由聚合 OSPF 是一种链路状态路由协议,因此 OSPF路由器不传输路由,而是传输链路状态信息。因此,OSPF 路由通过汇总 LSA 来控制链路状态信息的传输,从而减小 LSDB 数据库的大小,进而控制路由的汇总。 由于OSPF路由…

Object对象键值的输出循序到底如何排列的?

1.日常摸鱼看八股 今天又是复习八股文的一天,发现还是彻底懂得原理才好和面试官吹牛批呀。 接着来看看我chat大宝贝的回答: 在现代浏览器中,Object 对象的键值输出循序是比较稳定的,通常是按照如下顺序输出: 所有的数…

打怪升级之如何发送HEX进制的数据出去

Hex数据老大难 不少人都困扰于如何将电脑中读取到的string类型的数据变成整形发送出去。一半来说,不论你调用的通信方式是串口的还是网络的,亦或是PCIE的,其在电脑端的实际情况都是以系统API的形式呈现的。而系统API函数提供的接口&#xff…

项目实战典型案例23——-注册上nacos上的部分服务总是出现频繁掉线的情况

注册上nacos上的部分服务总是出现频繁掉线的情况一:背景介绍二:思路&方案解决问题过程涉及到的知识nacos服务注册和服务发现一:背景介绍 spring cloud项目通过nacos作为服务中心和配置中心,出现的问题是其中几个服务总是出现…

【电子通识】案例:从YS-CH341T USB转IIC和UART模块使用学习如何找资料

最近在调一个充电芯片,要用到IIC与充电芯片通信来读取和写入充电芯片寄存器,控制充电芯片的各种参数。从以前老员工那里捡到一个这样的模块,模块背面写了YS-CH341T。看着有IIC通信的样子,所以先在网上找一下资料。首先先在网上找到…

npm安装依赖包:405 Method Not Allowed...

运用npm安装依赖包时报错,错误如下。 解决思路: 关注到错误信息上写明了 Method Not Allowed,其后注明了 GET请求以及一个url,说明极有可能是不允许向这个路由发送GET请求; 在浏览器中尝试打开这个地址,结…

在分析了共50亿美元的加密融资之后,我们发现了这些

对加密市场嗅觉敏锐的玩家来说,市场中项目融资是不得不关注的选项,不少优质项目拿到了巨额融资之后,被大家所关注,在20-21年期间,行业内也出现了不少一级机构,布局早期项目,获取时代红利已经成为…

圆桌(满足客人空座需求,合理安排客人入座圆桌,准备最少的椅子)

CSDN周赛第30期第四题算法解析。 (本文获得CSDN质量评分【91】)【学习的细节是欢悦的历程】Python 官网:https://www.python.org/ Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单…… 地址:https://lq…

什么是业务运营?关键组成部分有哪些?

企业领导者使用收入运营和智能软件等技术来分析买家的不同接触点。这些见解决定了客户互动的成败,从而改善了业务运营,从而带来了成功。 什么是业务运营? 业务运营包括企业为保持盈利而执行的一系列日常任务。虽然这些任务可能因业务类型或行…

主辅助服务市场出清模型研究【旋转备用】(Matlab代码实现)

👨‍🎓个人主页:研学社的博客💥💥💞💞欢迎来到本博客❤️❤️💥💥🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密…