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. 转换成json字符串,与json字符串转换成java类型都要先转换成json对象

    转换成json字符串,与json字符串转换成java类型都要先转换成json对象

  2. BZOJ3714 PA2014Kuglarz(最小生成树)

    每次询问所获得的可以看做是两个前缀和的异或.我们只要知道任意前缀和的异或就可以得到答案了.并且显然地,如果知道了a和b的异或及a和c的异或,也就知道了b和c的异或.所以一次询问可以看做是在两点间连边, ...

  3. P4551 最长异或路径

    题目描述 给定一棵 nnn 个点的带权树,结点下标从 111 开始到 NNN .寻找树中找两个结点,求最长的异或路径. 异或路径指的是指两个结点之间唯一路径上的所有边权的异或. 输入输出格式 输入格式 ...

  4. [洛谷P4503][CTSC2014]企鹅QQ

    题目大意:给你$n(n\leqslant3\times10^4)$个长度为$l(l\leqslant200)$的字符串,要你求出有多少对字符串是相似的,相似的定义是两个字符串只在一位上不同. 题解:可 ...

  5. CF605E Intergalaxy Trips 贪心 概率期望

    (当时写这篇题解的时候,,,不知道为什么,,,写的非常冗杂,,,不想改了...) 题意:一张有n个点的图,其中每天第i个点到第j个点的边都有$P_{i, j}$的概率开放,每天可以选择走一步或者留在原 ...

  6. 谷哥的小弟学前端(01)——HTML常用标签(1)

    探索Android软键盘的疑难杂症 深入探讨Android异步精髓Handler 详解Android主流框架不可或缺的基石 站在源码的肩膀上全解Scroller工作机制 Android多分辨率适配框架 ...

  7. omnet++4.0安装使用

    http://my.oschina.net/u/2269841/blog/423659 本文主要借鉴该文章在此对作者表示由衷的感谢http://blog.csdn.net/xiaobei4929/ar ...

  8. python安装包下载

    加入python官网一次按照下图点击: 这个exe文件就下好了,然后再安装一下即可.

  9. Install Terraform on Windows, Linux and Mac OS

    Step-by-step tutorial of how to download and install Terraform on Windows, Linux and Mac OS. Terrafo ...

  10. 基于JavaSE阶段下的集合类汇总

    一.数组与集合的区别 数组和集合都是用来存储对象的容器,但是,数组只能储存基本数据类型的对象,且长度不可变:而集合是储存引用数据类型的对象,且长度可变,所以,在不知对象数量的具体数值时一般用集合来存储 ...