nginx 版本升级的实现方法

 更新时间:2024年09月14日 10:41:08   作者:leonnew  
文介绍了如何在CentOS7服务器上无中断地将Nginx从1.18.0版本升级到1.19.7版本,提供了两种升级方法,具有一定的参考价值,感兴趣的可以了解一下

Nginx 的版本最开始使用的是 Nginx-1.18.0 , 由于服务升级,需要将 Nginx 的版本升级到 Nginx-1.19.7 ,要求 Nginx 不能中断提供服务。

为了应对上述的需求,提供两种解决方案:

  • 方案1: make upgrade 完成升级
  • 方案2: 服务信号 完成升级

nginx 版本升级

环境说明

当前是 CentOS7 服务器。

点击进入 nginx 下载页面

环境准备

1)已安装的 Nginx 版本信息

nginx -V
或者
/usr/local/nginx/sbin/nginx -V

可以看出当前版本为 1.18.0,如下图所示:

在这里插入图片描述

2)下载当前最新版本 nginx-1.19.7,并通过Xftp上传至服务器,然后执行解压命令。

tar -zxvf nginx-1.19.7.tar.gz

如下图所示:

在这里插入图片描述

3)解压后,对最新版 nginx 进行配置

(1)查看现有版本(老版本)nginx 的 configure 配置信息

nginx  -V

如图所示,得到 configure 的配置信息。

在这里插入图片描述

(2)然后,再对新版 nginx 进行配置。

./configure  --prefix=/usr/local/nginx

如下图所示:

在这里插入图片描述

4)接着,进行 make

make

进行编译,切记千万不要输入 make install ,如下图所示:

在这里插入图片描述

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

在这里插入图片描述

6)对老版本 sbin 目录下的 nginx 进行备份:

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

如下图所示:

在这里插入图片描述

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

cp /root/nginx-1.19.7/objs/nginx   /usr/local/nginx/sbin/nginx

如下图所示:

在这里插入图片描述

方案1:make upgrade 命令升级

1)对 nginx 升级

make upgrade

如下图所示:

在这里插入图片描述

2)查看升级后的版本

/usr/local/nginx/sbin/nginx  -V

可以看到升级成功,并且过程中服务不中断,如下图所示:

在这里插入图片描述

5)通过浏览器可以访问到nginx的主页。

如下图所示:

在这里插入图片描述

方案2:服务信号升级

1)平滑重启升级nginx

发送信号 USR2 给 Nginx 的 1.18.0 版本对应的 master 进程。

kill -USR2 `cat /usr/local/nginx/log/nginx.pid`

旧版本 Nginx 的 pid 变为 oldbin ,这是旧版本和新版本的 nginx 同时运行,过一端时间等就 nginx 处理完用户请求后,执行下面操作从容关闭旧版本的 Nginx 进程。

2)从容关闭旧版本的Nginx进程

kill -WINCH `cat /usr/local/nginx/log/nginx.oldbin`

3)决定是否升级到新版的 nginx

发送信号 QUIT 给 Nginx 的 1.18.0 版本对应的 master 进程。

## nginx在不重载配置文件启动工作进程
kill -HUP `cat /usr/local/nginx/log/nginx.oldbin`  

## 关闭旧版nginx
kill -QUIT `cat/usr/local/nginx/log/nginx.oldbin`

4)验证nginx是否升级成功

/usr/local/nginx/sbin/nginx -V

到此这篇关于nginx 版本升级的实现方法的文章就介绍到这了,更多相关nginx 版本升级内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

您可能感兴趣的文章:

相关文章

  • Nginx如何配置根据路径转发详解

    Nginx如何配置根据路径转发详解

    Nginx是作为一个反向代理,转发,和负载均衡的服务器,也可以用于分布式,下面这篇文章主要给大家介绍了关于Nginx如何配置根据路径转发的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • 使用Nginx实现负载均衡的策略

    使用Nginx实现负载均衡的策略

    本篇文章主要介绍了使用Nginx实现负载均衡的策略,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • Nginx实现集群的负载均衡配置过程解析

    Nginx实现集群的负载均衡配置过程解析

    这篇文章主要为大家详细介绍了Nginx实现集群的负载均衡配置过程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • Nginx开启Gzip压缩大幅提高页面加载速度的方法

    Nginx开启Gzip压缩大幅提高页面加载速度的方法

    这篇文章主要介绍了Nginx开启Gzip压缩大幅提高页面加载速度的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • Nginx安装配置的实现示例

    Nginx安装配置的实现示例

    本文主要介绍了Nginx安装配置的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • Nginx安装nginx-rtmp-module模块的实现

    Nginx安装nginx-rtmp-module模块的实现

    nginx-rtmp-module是一个用于Nginx的第三方模块,它使Nginx能够支持实时多媒体流的传输和处理,本文主要介绍了Nginx安装nginx-rtmp-module模块,具有一定的参考价值,感兴趣的可以了解一下
    2025-02-02
  • Mac使用Nginx设置代理并禁用自带Apache的问题记录

    Mac使用Nginx设置代理并禁用自带Apache的问题记录

    本文介绍如何在Mac上禁用自带的Apache服务并安装Nginx,首先需要关闭Apache并禁止其自启动,接着,通过Homebrew安装Nginx,并配置其文件和目录,最后,介绍了如何生成SSL/自签名证书,详细步骤包括修改Apache配置、安装Nginx、编辑Nginx配置文件以及验证和重启Nginx服务
    2024-09-09
  • nginx location指令(匹配顺序匹配冲突)实战示例详解

    nginx location指令(匹配顺序匹配冲突)实战示例详解

    这篇文章主要介绍了nginx location指令(实战示例匹配顺序匹配冲突)详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 详解Nginx中基本的内存池初始化配置

    详解Nginx中基本的内存池初始化配置

    Nginx由其自己实现的内存池结构对内存进行管理,这里我们就来详解Nginx的基本内存池初始化配置,需要的朋友可以参考下
    2016-07-07
  • nginx代理postgresql的实现示例

    nginx代理postgresql的实现示例

    本文主要介绍了nginx代理postgresql的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-10-10

最新评论