升级Nginx1.14.1以上版本
一、编译Nginx
①、下载Nginx最新版
目前Nginx最新版是今年11月份发布的 1.9.7 版本,反正1.9+是没有稳定版,所以干脆弄个最新版:
|
cd /usr/local/src
|
|
|
wget http://nginx.org/download/nginx-1.14.1.tar.gz
|
②、编译Nginx
在已有环境下编译Nginx,一般做法是先取得目前运行的Nginx的运行参数,然后在这个参数的基础上加上本次编译想新增的参数即可。所以,我们先执行 nginx -V 查看它的编译参数是什么:
|
[root@MyAlyServer src]# /usr/local/nginx/sbin/nginx -V
|
|
|
Tengine version: Tengine/2.1.0 (nginx/1.6.2)
|
|
|
built by gcc 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC)
|
|
|
TLS SNI support enabled
|
|
|
configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --add-module=../ngx_cache_purge-2.3
|
可以看到张戈博客目前用的是1.6.2版本,当然也是淘宝定制过的Tengine。
如果你发现参数里面也存在 –add-module=../xxx 这种使用相对路径的参数,就得注意了。你重新编译的时候得保证新的Nginx编译文件夹的相对路径存在对应的模块,否则请重新指定一个正确的路径,比如上面代码中出现的 ngx_cache_purge-2.3,否则会提示找不到路径啦!
既然知道了老的Nginx的编译参数,那么直接按照下面操作,解压、编译、平滑升级搞定Nginx1.9x:
|
#解压
|
|
|
tar zxvf nginx-1.14.1.tar.gz
|
|
|
#进入源码目录
|
|
|
cd nginx-1.14.1
|
|
|
#编译,在已有Nginx编译参数前面加上 ./configure ,并在最后加一个激活 http 2.0 模块的参数
|
|
|
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --add-module=../ngx_cache_purge-2.3 --with-http_v2_module
|
|
|
#编译完成,如果没有报错(可以运行一下 echo $? 查看输出是不是 0 ),直接make,这里会需要几分钟左右。
|
|
|
make
|
|
|
#平滑升级,先移走现有的nginx 二进制文件
|
|
|
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old
|
|
|
#然后复制新生成的Nginx二进制文件到sbin目录
|
|
|
cp objs/nginx /usr/local/nginx/sbin
|
|
|
#最后执行升级命令
|
|
|
make upgrade
|
|
|
#若有报错可以尝试使用如下命令重启下Nginx,当然如果是配置错误那就得另外检查了
|
|
|
killall -9 nginx && /usr/local/nginx/sbin/nginx
|
升级Nginx1.14.1以上版本的更多相关文章
- nginx1.14.0版本https加密配置
修改host文件,为最后访问域名准备 C:\Windows\System32\drivers\etc host文件目录192.168.10.140 www.joyce.com 在最后添加这个自定义域名 ...
- 升级nginx1.12为1.161版本
升级nginx1.12为1.161版本 一.添加源 到 cd /etc/yum.repos.d/ 目录下 新建nginx.repo 文件 vim nginx.repo 输入以下信息 [nginx-st ...
- 升级python到2.7版本pip不可用
升级python到2.7版本pip不可用 [root@localhost pip-7.1.2]# pip Traceback (most recent call last): File "/ ...
- 升级node后还是原来版本问题
解决升级node后,已经安装了最新的版本,但是默认的node版本不是最新版本还是当前版本. 最近遇到个错误:The engine node is incompatible with this modu ...
- CentOS升级glibc-2.14
升级glibc-2.14用到的rpm https://pan.baidu.com/s/1v-Uk579TGM6498cExst6ow 先要安装gcc yum -y install gcc 执行: rp ...
- Centos7 安装nginx1.14
一丶官网 http://nginx.org/en/download.html 至于安装那个版本首先要看清楚版本代表什么意思 Nginx官网提供了三个类型的版本Mainline version:Main ...
- 编译安装和apt安装Nginx1.14.0
安装依赖 yum -y install gcc gcc-c++yum -y install zlib zlib-devel openssl openssl-devel pcre-devel 在Ubun ...
- CentOS 6下gcc升级的操作记录(由默认的4.4.7升级到6.4.0版本)
机房一台centos6.9机器部署了jenkins发布系统,开发人员在用node编译js,发现依赖的gcc版本低了,故需要将gcc升级到高版本(至少5.0版本以上),这里选择升级到6.4.0版本,下面 ...
- 快速升级openwrt的linux内核版本
一.分析 要升级openwrt的linux内核版本,关键是要制作内核配置文件 二.内核配置文件制作方法 2.1当前openwrt对应的某个开发板有对应的内核配置文件,比如此时的openwrt的linu ...
随机推荐
- 用github page为自己的项目编写文档
———————————————— 一.用md文件建立网页这一步要做的就是把四个实验报告做出来.1.首先为了方便管理,我们在ML下创建一个名为docs的文件夹. 2.然后在修改设置,让github从do ...
- JSP+Servlet+DAO+Javabean模式小记-20171029
1.Servlet的doPost方法使用request.getParameter()接收网页传送的form表单数据时,必须使用name属性,而不能使用id. 2.这是最简单的MVC模式,其中M(mod ...
- Java动态绑定与多态
在面向对象的程序设计语言中,多态是继数据抽象和继承之后的第三种基本特性.多态通过分离做什么和怎么做,从另一个角度将接口和实现分离开来.在一开始接触多态这个词的时候,我们或许会因为这个词本身而感到困惑, ...
- 天刀默认src截图保存文件夹位置在哪里?
C:\Users\Public\Documents\WuXia 注意有的电脑显示的是public documents,实际进去就是documents
- 解压 压缩 C#
public class SharpZip { public SharpZip() { } /// <summary> /// 压缩 /// </summary> /// &l ...
- HZOJ 20190727 随(倍增优化dp)
达哥T1 实际上还是挺难的,考试时只qj20pts,还qj失败 因为他专门给出了mod的范围,所以我们考虑把mod加入时间复杂度. $50\%$算法: 考虑最暴力的dp,设$f[i][j]$表示进行$ ...
- intellij idea http proxy config
# custom IntelliJ IDEA properties #http proxy -DproxySet=true -Dhttp.proxyHost=127.0.0.1 -Dhttp.prox ...
- Latex里引用多个公式,如何将公式合并?
如果是想要的效果:(1)-(3),怎么操作?类似于用\cite引用多个文献那样吗? 1. \eqref{lable 1, lable 2, label 3}? 得到的结果:3个问号 ??? 2.\eq ...
- Inter IPP & Opencv 在centos 环境下使用GCC命令行编译c++运行
Inter IPP & Opencv 的安装看这里:https://www.cnblogs.com/dzzy/p/11332907.html 考虑到服务器一般没有桌面环境,不能用IDE编译,直 ...
- 微信小程序获得unionid
一.微信小程序中app.js中: wx.login({ success: res => { if(res.code){ var code = res.code; wx.getSetting({ ...