我的升级环境:
旧版Nginx:1.6
新版Nginx:1.12.2
系统:Redhat 5.5 64位
 
 
前期准备
1、查看Nginx的安装位置
ps -ef |grep nginx  --如果Nginx没在运行,则漏洞为误报,可上报领导。
root     19681(PID号)     1  0 10:44 ?        00:00:00 nginx: master process ./nginx
hgaop    19682 19681  0 10:44 ?        00:00:00 nginx: worker process
root     22014 21985  0 11:14 pts/1    00:00:00 grep nginx
# ll /proc/19681   --513为进程PID号
lrwxrwxrwx 1 hgaop hgaop 0 Mar 2 16:20 cwd -> /data/hgaop/test/nginx/sbin –Nginx启动命令位置,/data/hgaop/test/nginx安装路径
lrwxrwxrwx 1 hgaop hgaop 0 Mar 2 17:07 exe -> /data/hgaop/test/nginx/sbin/nginx
 
2、找出相关文件的位置
find / -name nginx.pid error.log nginx.lock(我的服务器上面没找到) access.log
/data/hgaop/test/nginx/logs/nginx.pid
/data/hgaop/test/nginx/logs/error.log
/data/hgaop/test/nginx/logs/access.log
注意:如果上面找到的文件有些不在安装目录下,则在第四步配置需要指定相关文件的路径,例如:
--pid-path=/data/hgaop/test/nginx/logs/nginx.pid \
--lock-path=/data/hgaop/test/nginx/logs/nginx.lock \
--error-log-path=/data/hgaop/test/nginx/logs/error.log \
--http-log-path=/data/hgaop/test/nginx/logs/access.log \

3、可查看Nginx配置文件,看下端口和网站代码的目录等等,然后用浏览器看是否可以登录
 
升级开始:
一、首先查看一下Nginx版本
/data/hgaop/test/nginx/sbin/nginx -v
 
二、下载最新版本的nginx
网址:Nginxhttp://nginx.org/
 
三、将下载的文件上传到服务器中,解压
tar –zxf nginx-1.12.2.tar.gz
cd /data/nginx-1.12.2
 
四、配置
可用./configure --help查看相关的配置参数,包括制定openssl或者zlib库的路径等等
其中—prefix指定编译的路径。我这里是旧版Nginx的安装路径。告诉编译的Nginx启动文件来这里找nginx.pid,error.log,nginx.lock(我的服务器上面没找到),access.log这四个文件。
./configure \
--user=hgaop \
--group=hgaop \
--prefix=/data/hgaop/test/nginx \
--with-http_stub_status_module \
--with-http_ssl_module
 
五、执行,这里要主要,是只执行make,不能执行make install,切记!!!!!!
# make
 
六、将sbin下的nginx重命名为nginx.old
# mv/data/hgaop/test/nginx/sbin/nginx /data/hgaop/test/nginx/sbin/nginx.old
 
七、复制编译后的objs目录下的nginx到nginx安装目录的sbin下
cd /data/nginx-1.12.2   --执行make的目录
cp objs/nginx /data/hgaop/test/nginx/sbin/
 
八、这里可以测试一下新复制过来的文件是否生效,如果出现下面的 OK 与 successful为正确即可。如下:
# /data/hgaop/test/nginx/sbin/nginx -t
nginx: the configuration file /data/hgaop/test/nginx/conf/nginx.conf syntax is ok nginx: configuration file /data/hgaop/test/nginx/conf/nginx.conf test is successful
可能出现的错误:提示找不到pid,Nginx.conf或者.log文件。
解决:重新在第四步开始。配置要指定pid或者log文件等等(找不到哪个就指定哪个)。如前期准备的第2步说的那样。
 
 
九、停止旧版Nginx,把nginx.pid文件修改成nginx.pid.oldbin,随即重新启动nginx,实现不间断升级。
# cd /data/hgaop/test/nginx/sbin/
# ./nginx.old –s stop  --停止旧版Nginx
# ./nginx --直接回车,启动新版Nginx
 
十、升级完成后,重新查看一下版本即可
# /data/hgaop/test/nginx/sbin/nginx -v
 
十一、去网页访问,网页是否能够打开,查看源代码,看Nginx版本。
 
 

linux升级Nginx1.6到Nginx1.12.2的更多相关文章

  1. 【转载】Linux升级NTPD服务器-编译安装ntp-4.2.8p12与配置

    [转载]Linux升级NTPD服务器-编译安装ntp-4.2.8p12与配置 1. 系统与软件版本 1.1 系统版本 rhel6.4(Red Hat Enterprise Linux Server r ...

  2. Linux 升级内核开启 TCP BBR 有多大好处

    前言 如果你有订阅一些科技新闻,应该会有看过内核在4.9当中加入了一个新的算法,来解决在有一定的丢包率的情况下的带宽稳定的问题,这个是谷歌为我们带来的干货,新的 TCP 拥塞控制算法 BBR (Bot ...

  3. Linux就这个范儿 第12章 一个网络一个世界

    Linux就这个范儿 第12章 一个网络一个世界 与Linux有缘相识还得从一项开发任务说起.十八年前,我在Nucleus  OS上开发无线网桥AP,需要加入STP生成树协议(SpanningTree ...

  4. 关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复nginx最新漏洞CVE-2017-7529的解决方案

    关于centos7和centos6中平滑升级nginx到新版本v1.12.1修复CVE-2017-7529漏洞的解决方案 漏洞描述 2017年7月11日,Nginx官方发布最新的安全公告,在Nginx ...

  5. linux升级mysql到5.7

    原文:http://blog.csdn.net/qing_gee/article/details/41774265 Linux升级MySQL版本到5.7. 1.下载Linux的5.7版本,主要需要两个 ...

  6. (3)Linux命令分类汇总(7~12)

    Linux命令分类汇总(7~12) (七)用户管理命令(12个) 1    useradd cdgs   添加用户. 2     usermod 修改系统已经存在的用户属性. 3    userdel ...

  7. Linux升级命令yum upgrade和yum update的区别

    Linux升级命令有两个分别是yum upgrade和yum update, 这个两个命令是有区别的: yum -y update 升级所有包同时也升级软件和系统内核 yum -y upgrade 只 ...

  8. window升级Nginx1.10到1.12.2

    window升级Nginx较为简单,只需要修改配置文件,然后启动即可. 环境:window系统 服务器:10.123.98.92 Nginx目录:e:\hgeagle\nginx-1.10.1 旧版N ...

  9. Linux升级C基本运行库CLIBC

    在你准备升级GLIBC库之前,你要好好思考一下, 你真的要升级GLIBC么? 你知道你自己在做什么么? glibc是gnu发布的libc库,即c运行库.glibc是linux系统中最底层的api,几乎 ...

随机推荐

  1. 【UML】统一建模语言及工具

    共四个 Chapter,持续输出中. 参考资料: UML软件建模技术-基于IBM RSA工具(清华大学出版社) UML2.0基础与RSA建模实例教程(人民邮电) 面向对象葵花宝典(李运华)(电子工业出 ...

  2. C++中vector::data()使用心得和对自定义类型指针运算符的默认重载

    一.C++ vector::data()函数 返回值类型:vector的基类 返回值:Returns a pointer such that [data(), data() + size()] is ...

  3. Golang 语言特性

    1. 函数 与c 语言不同,go 语言中,函数的参数和返回值都由栈来存储. 传值:函数调用时会复制参数,被调用方和调用方持有两份不相关的两份数据 传引用:函数调用时会传递参数指针,被调用方和调用方持有 ...

  4. 网站SQL注入防御实战

    SQL注入作为直接威胁web业务的最严重攻击行为,已经被大多数的网站管理员所了解,这种通过HTTP标准端口,利用网页编码不严谨,提交精心构造的代码实现对数据库非授权访问的攻击方法,已经被越来越多的sc ...

  5. 无法更新apt镜像源?树莓派安装最新版Debian11(bullseye)arm64位系统步骤

    镜像下载.域名解析.时间同步请点击阿里云开源镜像站 树莓派系统在2022年1月28日迎来了更新,更新了64位的系统,同时也有lite系统供我们使用.32位系统很多软件都用不了,特别是宝塔面板.下面是安 ...

  6. react中使用截图组件Cropper组件

    --最近项目用react,学习react并使用cropper组件裁剪图片. (这里开发组件不够统一有用tsx(TypeScript + xml/html)写的组件,有用jsx(javascript+x ...

  7. AVRmega16 LED 例程

                                                                                      AVRmega16 LED 例程   ...

  8. Vue实例(1)

    vue入门示例(一) herokang 2019-08-21 15:33:58  12696  收藏 44 分类专栏: 前端 文章标签: vue入门 版权 为了让广大后端人员更快的理解上手vue,我们 ...

  9. java面试--360

    1题执行以下程序后的输出结果是()public class Test {public static void main(String[] args) {StringBuffer a = new Str ...

  10. Aspect 切面?

    AOP核心就是切面,它将多个类的通用行为封装成可重用的模块,该模块含有一组API提供横切功能.比如,一个日志模块可以被称作日志的AOP切面.根据需求的不同,一个应用程序可以有若干切面.在Spring ...