nginx升级至1.12.1

编号

名称

说明

1

nginx-1.12.1.tar.gz

nginx安装程序

2

nginx_upstream_check_module-master.zip

实现后端服务器的健康检查

3

nginx-sticky-module-ng-1.2.5.zip

实现Cookie会话黏贴(session-sticky效果)

4

ngx_cache_purge-master.zip

实现更强大的缓存清除功能

注意:必须使用最新的nginx_upstream_check_module才支持nginx 1.12.1版本

下载nginx_upstream_check_module

https://codeload.github.com/yaoweibin/nginx_upstream_check_module/zip/master

1、解压软件

tar zxvf nginx-1.12..tar.gz
unzip nginx-sticky-module-ng-1.2..zip
mv nginx-goodies-nginx-sticky-module-ng-08a395c66e42/ nginx-sticky-module-ng-1.2.
unzip nginx_upstream_check_module-master
unzip ngx_cache_purge-master.zip

2、编译安装

cd nginx-1.12./
patch -p0 < ../nginx_upstream_check_module-master/check_1.11.5+.patch
结果
patching file src/http/modules/ngx_http_upstream_hash_module.c
patching file src/http/modules/ngx_http_upstream_ip_hash_module.c
patching file src/http/modules/ngx_http_upstream_least_conn_module.c
patching file src/http/ngx_http_upstream_round_robin.c
patching file src/http/ngx_http_upstream_round_robin.h
cd ../nginx-sticky-module-ng-1.2.
patch -p0 < ../nginx_upstream_check_module-master/nginx-sticky-module.patch
结果
patching file ngx_http_sticky_module.c
Hunk # succeeded at with fuzz (offset lines).
Hunk # succeeded at (offset lines).
Hunk # succeeded at (offset lines).
Hunk # succeeded at (offset lines).
cd ../nginx-1.12.
./configure --prefix=/usr/local/nginx --with-pcre --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --add-module=/root/nginx_upstream_check_module-master --add-module=/root/nginx-sticky-module-ng-1.2. --add-module=/root/ngx_cache_purge-master
make

3、备份旧版nginx文件,将新版本的nginx可执行文件复制到nginx的sbin目录

cp -a /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

4、停止nginx服务,替换nginx执行文件

/usr/local/nginx/sbin/nginx -s stop

cd /root/nginx-1.12./objs
cp -a nginx /usr/local/nginx/sbin/nginx

5、同时还可以隐藏nginx版本号

在http {—}里加上server_tokens off;

执行curl -I IP

nginx升级方法至1.16.1如下,建议在测试环境或备机执行测试。

1、查看现有nginx版本

/usr/local/nginx/sbin/nginx -V
nginx version: nginx/1.11.
built by gcc 4.4. (Red Hat 4.4.-) (GCC)
built with OpenSSL 1.0.2j Sep
TLS SNI support enabled
configure arguments: --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-openssl=/usr/local/src/openssl-1.0.2j --with-pcre=/usr/local/src/pcre-8.38 --add-module=/usr/local/src/ngx_cache_purge-2.3 --with-http_gzip_static_module

2、备份旧版nginx文件,将新版本的nginx可执行文件复制到nginx的sbin目录

cp -a /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

3、下载,解压并安装新版本nginx-1.16.1,及相关模块

tar -zxvf nginx-1.16..tar.gz
unzip nginx_upstream_check_module-master.zip

编译模块nginx_upstream_check_module

cd nginx-1.16.
patch -p0 < ../nginx_upstream_check_module-master/check_1.14.0+.patch

编译nginx(一定要按照原先编译参数进行编译)

./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-openssl=/usr/local/src/openssl-1.0.2j --with-pcre=/usr/local/src/pcre-8.38 --add-module=/usr/local/src/ngx_cache_purge-2.3 --with-http_gzip_static_module --add-module=/root/nginx_upstream_check_module-master

make

此时不要执行make install,否则会覆盖nginx文件

4、停止nginx服务,替换nginx执行文件

/usr/local/nginx/sbin/nginx -s stop
cd /root/nginx-1.16./objs
cp -a nginx /usr/local/nginx/sbin/nginx

5、验证nginx版本及业务是否正常

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

欢迎转载,转载请注明出自:

nginx升级至1.12.1版本 - paul_hch - 博客园
http://www.cnblogs.com/paul8339/p/7161316.html

nginx升级至1.12.1版本的更多相关文章

  1. nginx-1.12.0版本(编译安装)-自定义安装路径

    nginx-1.12.0版本(编译安装)-自定义安装路径 安装路径:/application/nginx-1.12.0 1.前期准备 安装编译需要的gcc和gcc-c++ yum install -y ...

  2. Linux 从4.12内核版本开始移除了 tcp_tw_recycle 配置。 tcp_max_tw_buckets TIME-WAIT 稳定值

    被抛弃的tcp_recycle_小米云技术-CSDN博客_sysctl: cannot stat /proc/sys/net/ipv4/tcp_tw_recy https://blog.csdn.ne ...

  3. OGG for DB2 z/OS 12.2版本发布

    2016-04-15 Oracle发布了GoldenGate for DB2 z/OS  12.2.0.1.2.可以从OTN或eDelivery下载,该版本是ogg for DB2 z/OS的第一个1 ...

  4. docker 1.12.3版本搭建私有仓库,上传镜像报错:server gave HTTP response to HTTPS client”

    系统环境:centos7 docker版本: 1.12.3(注意版本,可能存在不同版本设置不同的情况) docker registry版本:2.4.1 问题: 成功安装docker registry, ...

  5. Java_POI之MS-Excel2003(扩展名.xls)升级至MS-Excel2007及以上版本(扩展名.xlsx)技术过程概要

    Java_POI之MS-Excel2003(扩展名.xls)升级至MS-Excel2007及以上版本(扩展名.xlsx)技术过程概要 作者:Eric.Zhang(花名:穿越者7号) 日期:2015年1 ...

  6. 查看nginx | apache | php | tengine | tomcat版本的信息以及如何隐藏版本信息【转】

    转自: 查看nginx | apache | php | tengine | tomcat版本的信息以及如何隐藏版本信息 - 追马 - 51CTO技术博客http://lovelace.blog.51 ...

  7. 【转帖】Gitlab 从 12.1 版本开始将不再支持 MySQL !

    Gitlab 从 12.1 版本开始将不再支持 MySQL ! Gitlab 官方宣布,将从 12.1 版本开始不再支持 MySQL 数据库. http://news.51cto.com/art/20 ...

  8. 查看Linux系统、Apche、Nginx、 MySQL 、 PHP 版本

    1. 查看Linux版本: uname -a: more /etc/issue; cat /proc/version; 2. 查看Mysql版本: 在终端下执行 mysql -V #V必须大写 在he ...

  9. mariadb集群与nginx负载均衡配置--centos7版本

    这里配置得是单nginx主机..先准备4台主机,三台mariadb集群,一台nginx. ------------------------------------------------------- ...

随机推荐

  1. FragmentTransaction add 和 replace 区别 转

    使用 FragmentTransaction 的时候,它提供了这样两个方法,一个 add , 一个 replace . add 和 replace 影响的只是界面,而控制回退的,是事务. public ...

  2. C++手动开O2优化

    O2优化能使程序的编译效率大大提升. 从而减少程序的运行时间,达到优化的效果. C++程序中的O2开关如下所示: #pragma GCC optimize(2) 同理O1.O3优化只需修改括号中的数即 ...

  3. 深入理解JVM一内存模型、可见性、指令重排序

    一.内存模型 首先我们思考一下一个java线程要向另外一个线程进行通信,应该怎么做,我们再把需求明确一点,一个java线程对一个变量的更新怎么通知到另外一个线程呢?我们知道java当中的实例对象.数组 ...

  4. UVA - 11997(巧妙的优先队列)

    题意: 有k个整数数组,各包含k个元素,在每个数组中取一个元素加起来,可以得到kk个和,求这些和中最小的k个值 解析: 从简单的情况开始分析:经典方法,对原题没有思路,那么分析问题的简化版 这是对于两 ...

  5. 函数式编程(1)-高阶变成(1)-map/reduce

    map/reduce Python内建了map()和reduce()函数. 如果你读过Google的那篇大名鼎鼎的论文“MapReduce: Simplified Data Processing on ...

  6. Redis Scan迭代器遍历操作原理(二)

    续上一篇文章 Redis Scan迭代器遍历操作原理(一)–基础 ,这里着重讲一下dictScan函数的原理,其实也就是redis SCAN操作最有价值(也是最难懂的部分). 关于这个算法的源头,来自 ...

  7. P5028 Annihilate

    P5028 Annihilate 50个串,任意两两的最长公共子串 回忆最长公共子串求法 1.hash+二分 2.SAM 3.SA,属于不同的串的hei的max 1.hash+二分 暴力两两枚举再跑的 ...

  8. css样式表设置

    有参考此片博文 1.内联式样式表 是指将CSS样式编码写在HTML标签中,在标签内编写的样式能影响的范围最小,只改变本标签的文字样式,同样的标签不会受到影响,也称行间样式表. 格式如下 <h1 ...

  9. codeforces gym101243 A C D E F G H J

    gym101243 A #include<iostream> #include<cstdio> #include<cmath> #include<cstrin ...

  10. LuaJavaBridge - lua与java互操作的简单解决方案

    引入:Android平台代码和Lua代码的交互均通过C++和Java交互,Lua再和C++交互(lua  <==> C++ <==> java) 我最开始遇见这种lua调用ja ...