nginx编译安装后对nginx进行平滑升级的方法

nginx编译安装后用了一段时间后发现当前版本有漏洞或需要新的功能时就需要对当前nginx版本进行版本升级,但又不能影响正常的使用,所以这时就需到对nginx的平滑升级,更新到最新版本了。

本文演示的是nginx-1.13.6升级到nginx-1.13.12的过程,其他版本也适用。

一、nginx新版的下载

下载页面:http://nginx.org/en/download.html

wget -c http://nginx.org/download/nginx-1.13.12.tar.gz

二、获取老版本nginx的配置

查看当前版本: /usr/local/nginx/sbin/nginx -v

查看当前配置: /usr/local/nginx/sbin/nginx -V

[root@zixuephp nginx-1.13.6]# /usr/local/nginx/sbin/nginx -v
nginx version: nginx/1.13.6
[root@zixuephp nginx-1.13.6]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.13.6
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --with-pcre --with-http_ssl_module

三、解压新版nginx源码包

tar -xzvf nginx-1.13.12.tar.gz
cd nginx-1.13.12

四、对新版重新编译前的配置

这里的配置和老版本的一样 : /usr/local/nginx/sbin/nginx -V

代码如下:

./configure --prefix=/usr/local/nginx --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --with-pcre --with-http_ssl_module

五、编译生成objs目录,进入目录,替换nginx

make

编译后通过ls可以看到有个objs的目录

[root@zixuephp nginx-1.13.12]# ls
auto CHANGES CHANGES.ru conf configure contrib html LICENSE Makefile man objs README src
[root@zixuephp nginx-1.13.12]#

进入objs目录,替换老版本的nginx主程序(在操作这里前一定要先备份,免得出错)

[root@zixuephp objs]#mv nginx /usr/local/nginx/sbin/nginx

六、平滑升级

make upgrade

七、升级成功,查看版本

[root@zixuephp nginx-1.13.12]# /usr/local/nginx/sbin/nginx -v
nginx version: nginx/1.13.12
[root@zixuephp nginx-1.13.12]# /usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.13.12
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --with-pcre --with-http_ssl_module

在升级前一定要提前备份好nginx程序和网站等文件,避免出错。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 详解nginx平滑升级的过程

    1.开始之前首先查看当前的使用版本以及编译时的参数: [root@www ~]# /usr/local/nginx/sbin/nginx -V nginx version: nginx/1.12.2 built by gcc 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC) built with OpenSSL 1.0.1e-fips 11 Feb 2013 TLS SNI support enabled configure arguments: --user=ww

  • Nginx平滑升级的详细操作方法

    一.平滑升级概述Nginx方便地帮助我们实现了平滑升级.其原理简单概括,就是:(1)在不停掉老进程的情况下,启动新进程.(2)老进程负责处理仍然没有处理完的请求,但不再接受处理请求.(3)新进程接受新请求.(4)老进程处理完所有请求,关闭所有连接后,停止.这样就很方便地实现了平滑升级.一般有两种情况下需要升级Nginx,一种是确实要升级Nginx的版本,另一种是要为Nginx添加新的模块.二..升级过程具体的操作也很简单,如下: (0)查看当前版本在存放Nginx的可执行文件的目录下输入: 复制

  • Nginx1.8.0版本平滑升级新版本1.9.7

    首先查看现在环境nginx的版本为1.8.0 编译的参数只指定了安装路径: 复制代码 代码如下: [root@localhost sbin]# ./nginx -V nginx version: nginx/1.8.0 built by gcc 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) configure arguments: --prefix=/usr/local/nginx 平滑升级步骤如下: 下载nginx1.9.7版本,解压并进入解压后的目录 复制代

  • nginx编译安装后对nginx进行平滑升级的方法

    nginx编译安装后用了一段时间后发现当前版本有漏洞或需要新的功能时就需要对当前nginx版本进行版本升级,但又不能影响正常的使用,所以这时就需到对nginx的平滑升级,更新到最新版本了. 本文演示的是nginx-1.13.6升级到nginx-1.13.12的过程,其他版本也适用. 一.nginx新版的下载 下载页面:http://nginx.org/en/download.html wget -c http://nginx.org/download/nginx-1.13.12.tar.gz 二

  • Ubuntu环境编译安装PHP和Nginx的方法

    本文实例讲述了Ubuntu环境编译安装PHP和Nginx的方法.分享给大家供大家参考,具体如下: 编译安装nginx 切换目录到工作文件夹: cd /usr/local/src 下载pcre源代码并安装 wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-10.20.tar.gz tar -zxvf pcre2-10.20.tar.gz mv ./pcre2-10.20.tar.gz ./pcre cd pcre ./

  • 在lnmp环境中的nginx编译安装

    我用的linux系统是 centos7.1. 如果linux系统没有预先安装 gcc 等编译软件可以用yum源安装.安装nginx,首先需要安装依赖模块pcre.zlib.openssl. gzip 模块需要 zlib 库 rewrite 模块需要 pcre 库 ssl 功能需要 openssl库 1.安装pcre依赖 下载 pcre-8.38 wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz

  • nginx编译安装及常用参数详解

    目录 1 基于ansible role实现编译安装nginx 2 编译安装参数详解 1 基于ansible role实现编译安装nginx 利用ansible控制端10.0.0.8机器,在被控制端10.0.0.18上部署nginx 首先打通ansible控制端与被控制端的基于key验证 [root@ansible-rocky ~]$ ssh-copy-id 10.0.0.18 [root@ansible-rocky ~]$ ssh 10.0.0.18 Last login: Wed Jan 11

  • Linux下nginx编译安装教程和编译参数详解

    一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码 代码如下: # yum install pcre* //如过你已经装了,请跳过这一步 2.安装openssl 需要ssl的支持,如果不需要ssl支持,请跳过这一步 复制代码 代码如下: # yum install openssl* 3.gzip 类库安装 复制代码 代码如下: yum install zlib zlib-devel 4.安装wget 下载nginx使用,如果已经安装,跳过这一步 复制代码

  • Ubuntu下nginx编译安装参数配置

    安装依赖库: sudo apt-get install libgd2-xpm sudo apt-get install libgd2-xpm-dev sudo apt-get install libgeoip-dev sudo apt-get install libpcre3 sudo apt-get install libpcre3-dev sudo apt-get install libssl-dev sudo apt-get install openssl sudo apt-get ins

  • Python首次安装后运行报错(0xc000007b)的解决方法

    错误提示如下: 其实这是一个挺常见的系统报错,缺乏VC++库. 我安装的是python3.5.2,这个版本需要的vc版本是2015的了,下载:Microsoft Visual C++ 2015 安装完后发现就正常了: 总结 通过以上的方法就能轻松解决首次安装Python后运行报错的问题,希望本文的内容对同样遇到这个问题的朋友们能有所帮助,如果有疑问大家可以留言交流,小编会尽快给大家回复.

  • mysql安装后.net程序运行出错的解决方法

    发现问题 最近在安装mysql后运行.net程序出错: 出错位置:C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config 出错信息:未能加载文件或程序集"MySql.ConnectorInstaller, Version=6.10.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"或它的某一个依赖项.系统找不到指定的文件. 图示: 原因: 当你安装M

  • sql2008安装后服务器改名造成名称不一致解决方法

    用select @@servername和select serverproperty('servername')一查看服务器名是否一致 如果不一致,则以serverproperty('servername')为准 解决办法: 复制代码 代码如下: exec sp_dropserver @server = '服务器名' exec sp_addserver @server = '服务器名', @local = 'LOCAL' 重启sql2008数据库服务,后再次检查是否一致

  • debian安装后sudo命令不能用的解决方法

    debian安装完之后发现sudo命令不能用 找了半天发现是没有安装sudo 得了,进入root安包,炸开他,apt-get install sudo 安装完发现又出现一堆怪问题 不管他,继续前进 在root设置sudoers配制文件 复制代码 代码如下: chmod +w /etc/sudoers vim /etc/sudoers 添加一行  复制代码 代码如下: username     ALL=(ALL) ALL 其中username是你的用户名,保存 更改sudoers文件权限 复制代码

随机推荐