我的升级环境:
旧版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. 2.5 C++STL stack详解

    文章目录 2.5.1引入 2.5.2 代码示例 2.5.3 代码运行结果 总结 2.5.1引入 stack是一种"先进后出"的容器. 不过值得注意的是stack是一种关联容器,是通 ...

  2. C#序列化和反序列化(json)

    一,什么是Json? json是存储和交换文本信息的方法,类似xml.但是json比xml更小,更快,j更易于解析.并且json采用完全独立于语言的文本格式(即不依赖于各种编程语言),这些特性使jso ...

  3. python3求200以内能被17整除的最大正整数

    for i in range(200, 17,-1): if(i%17==0): print(i) break

  4. eclipse新建maven项目:'Building' has encountered a problem. Errors occurred during the build.

    二.eclipse 新建maven 项目报错(因为没有配置maven环境) 1.问题: ① 出现的问题1: Could not calculate build plan:Plugin org.apac ...

  5. 题解P0006:生日蛋糕(P1731)

    这道题居然是1999年省选题!这可能是洛谷蓝题里最水的了... 题目链接:https://www.luogu.com.cn/problem/P1731 大家有兴趣可以去看看 题目描述:就是类似这样一个 ...

  6. pytorch方面

    (113条消息) Pytorch基础:Torch.mul.Torch.mm与Torch.matmul的异同_名字填充中的博客-CSDN博客_pytorch torch.mul (111条消息) pyt ...

  7. Mysql之锁(一)

    读锁与写锁 读锁:共享锁.Shared Locks.S锁. 写锁:排他锁.Exclusive Locks.X锁. 读锁:只能读不允许写 写锁:不能读也不能写,只允许自己写 但是允许其他事务进行普通的s ...

  8. java concurrent 并发多线程

    Concurrent 包结构 ■ Concurrent 包整体类图 ■ Concurrent包实现机制 综述: 在整个并发包设计上,Doug Lea大师采用了3.1 Concurrent包整体架构的三 ...

  9. Spring MVC的异常处理 ?

    可以将异常抛给Spring框架,由Spring框架来处理:我们只需要配置简单的异常处理器,在异常处理器中添视图页面即可.

  10. Kafka 的设计架构你知道吗?

    Producer :消息生产者,就是向 kafka broker 发消息的客户端. Consumer :消息消费者,向 kafka broker 取消息的客户端. Topic :可以理解为一个队列,一 ...