nginx 平滑升级tengine
wget http://tengine.taobao.org/download/tengine-1.5.1.tar.gz //下载Tengine1.5.1版本
tar zxvf tengine-1.5.1.tar.gz //解压到当前目录
cd tengine-1.5.1 //进入到目录
./configure //执行安装脚本
make //编译安装
mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old //备份nginx的配置文件,路径参考你自己的
cp -r objs/nginx /usr/local/nginx/sbin/nginx //复制Tengine文件到nginx下
#vi /usr/local/nginx/conf/nginx.conf //编辑nginx.conf,删除如下代码
#location /status {
#stub_status on;
#access_log off;
#}
kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`
kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin`
//结束nginx进程
/usr/local/nginx/sbin/nginx -v //查看nginx版本号
返回带有Tengine版本号等信息则升级成功!
/*
************************************
**卸载Tengine,换回Nginx
************************************
*/
rm -rf /usr/local/nginx/sbin/nginx //删除Tengine配置文件
mv /usr/local/nginx/sbin/nginx.lod /usr/local/nginx/sbin/nginx //恢复备份的nginx配置文件,路径参考你自己的
/etc/init.d/nginx restart //重启nginx
/usr/local/nginx/sbin/nginx -v //查看nginx版本号
返回带有Nginx版本号则卸载成功
实验如下:
[root@qike tengine-2.1.0]# kill -USR2 `cat /usr/local/nginx/logs/nginx.pid` // 平滑升级 会在/usr/local/nginx/logs/ 下生成了nginx.pid.oldbin (以前的nginx进程号) nginx.pid现在变为tengine的进程号.
[root@qike tengine-2.1.0]# cd /usr/local/nginx/logs/
[root@qike logs]# ls -lh
total 48K
-rw-r--r-- 1 root root 46 Jul 4 00:19 aa
-rw-r--r-- 1 root root 5.2K Jun 20 23:29 access.log
-rw-r--r-- 1 root root 17K Aug 2 20:49 error.log
-rw-r--r-- 1 root root 6 Aug 2 20:49 nginx.pid
-rw-r--r-- 1 root root 6 Jul 27 23:36 nginx.pid.oldbin
drwxr-xr-x 2 root root 4.0K Jul 6 14:53 old
-rw-r--r-- 1 root root 209 Jul 4 00:01 test
[root@qike logs]# cat /usr/local/nginx/logs/nginx.pid
31941
[root@qike logs]# cat /usr/local/nginx/logs/nginx.pid.oldbin
24372
[root@qike logs]# ps -ef |grep nginx
root 24372 1 0 Jul27 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nobody 24373 24372 0 Jul27 ? 00:00:14 nginx: worker process
nobody 24374 24372 0 Jul27 ? 00:00:13 nginx: worker process
nobody 24375 24372 0 Jul27 ? 00:00:15 nginx: worker process
nobody 24376 24372 0 Jul27 ? 00:00:12 nginx: worker process
root 31941 24372 0 20:49 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nobody 31942 31941 0 20:49 ? 00:00:00 nginx: worker process
nobody 31943 31941 0 20:49 ? 00:00:00 nginx: worker process
nobody 31944 31941 0 20:49 ? 00:00:00 nginx: worker process
nobody 31945 31941 0 20:49 ? 00:00:00 nginx: worker process
root 32023 25663 0 20:50 pts/2 00:00:00 grep nginx
[root@qike logs]# kill -QUIT `cat /usr/local/nginx/logs/nginx.pid.oldbin` //kill -QUIT 旧进程号(老进程) 会把旧的进程和nginx.pid.oldbin 这个文件干掉
[root@qike logs]# ps -ef |grep nginx
root 31941 1 0 20:49 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
nobody 31942 31941 0 20:49 ? 00:00:00 nginx: worker process
nobody 31943 31941 0 20:49 ? 00:00:00 nginx: worker process
nobody 31944 31941 0 20:49 ? 00:00:00 nginx: worker process
nobody 31945 31941 0 20:49 ? 00:00:00 nginx: worker process
root 32073 25663 0 20:51 pts/2 00:00:00 grep nginx
[root@qike logs]# nginx -v
Tengine version: Tengine/2.1.0 (nginx/1.6.2)
nginx 平滑升级tengine的更多相关文章
- 让你的网站免费支持 HTTPS 及 Nginx 平滑升级
为什么要使用 HTTPS ? 首先来说一下 HTTP 与 HTTPS 协议的区别吧,他们的根本区别就是 HTTPS 在 HTTP 协议的基础上加入了 SSL 层,在传输层对网络连接进行加密.简单点说在 ...
- Nginx range filter模块数字错误漏洞修复 (Nginx平滑升级) 【转】
对线上生产环境服务器进行漏洞扫描, 发现有两台前置机器存在Nginx range filter模块数字错误漏洞, 当使用nginx标准模块时,攻击者可以通过发送包含恶意构造range域的header ...
- Nginx range filter模块数字错误漏洞修复 (Nginx平滑升级)
对线上生产环境服务器进行漏洞扫描, 发现有两台前置机器存在Nginx range filter模块数字错误漏洞, 当使用nginx标准模块时,攻击者可以通过发送包含恶意构造range域的header ...
- nginx平滑升级实战
Nginx 平滑升级 1.查看旧版Nginx的编译参数 [root@master ~]# /usr/local/nginx/sbin/nginx -V [root@master ~]# ll ngin ...
- Nginx平滑升级版本!(重点)
一.解释nginx的平滑升级 随着nginx越来越流行使用,并且nginx的优势也越来越明显,nginx的版本迭代也开始了加速模式,1.9.0版本的nginx更新了许多新功能,例如stream四层代理 ...
- 02 . Nginx平滑升级和虚拟主机
Nginx虚拟主机 在真实的服务器环境,为了充分利用服务器资源,一台nginx web服务器会同时配置N个虚拟主机,这样可以充分利用服务器的资源,方便管理员的统一管理 配置nginx虚拟主机有三种方法 ...
- Nginx平滑升级详细步骤-113p.cn
认识平滑升级 有时候我们需要对Nginx版本进行升级以满足运维人员对其功能的需求,例如添加xxx模块,需要xxx功能,而此时Nginx又在跑着业务无法停掉,这时我们就只能平滑升级了. 平滑升级原理 N ...
- Nginx 平滑升级、Nginx的一些基础配置
# Nginx 平滑升级 # 方案一:使用Nginx服务信号进行升级 # 1.将就版本的sbin目录下可执行nginx进行备份(mv nginx nginxold) # 2.将新版本 configur ...
- nginx平滑升级、在线添加模块(tengine 动态加载模块)
http://www.orzace.com/how-to-upgrade-nginx/ 下面是nginx替换成tengine再加上lua 模块,(tengine-2.0.1版本暂时无法动态加载lua模 ...
随机推荐
- VS "15" 预览 5 中 VB 15 新增的功能
VS "15" 预览 5 给 VB 带来了更新.这次的更新内容有3个: * 值元组 ValueTuple这个功能能把一组计算结果成组返回.为了使用这个功能,我们要安装 System ...
- 重新想象 Windows 8 Store Apps (59) - 锁屏
[源码下载] 重新想象 Windows 8 Store Apps (59) - 锁屏 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 锁屏 登录锁屏,获取当前程序的锁 ...
- 泛函编程(20)-泛函库设计-Further Into Parallelism
上两节我们建了一个并行运算组件库,实现了一些基本的并行运算功能.到现在这个阶段,编写并行运算函数已经可以和数学代数解题相近了:我们了解了问题需求,然后从类型匹配入手逐步产生题解.下面我们再多做几个练习 ...
- 【Effective Java】3、避免创建不必要的对象
创建对象的时候,有些变量可以一直保持的时候,可以不必要每次实例化对象的时候都把这些变量初始化一遍,可以使用静态和静态块的方式把这些变量的数据固定下来 package cn.xf.cp.ch02.ite ...
- CSS的一些小事
1.什么时候能将零散的图片整合成一张大图,达到减少请求数的作用? 答:整合进大图的图片是被设置no-repeat用的,如果是repeat-x.repeat-y就不可以. 2.E + F 选择紧贴在E元 ...
- 关于字符串replace方法第二个参数探究
网上有关replace的文章很多了,这里主要聊聊它的第二个参数.阅读本文需要对replace方法有一定了解.W3school=>replace 我们要把一段字符串中的某些指定字符替换掉,第一时间 ...
- Access sql语句创建表及字段类型
创建一张空表: Sql="Create TABLE [表名]" 创建一张有字段的表: Sql="Create TABLE [表名]([字段名1] MEMO NOT NUL ...
- 关于NSDate和NSDateFormatter的几个常用方法
/** * NSDate常见类方法 */ // 获得当前时间 NSDate *date1 = [NSDate date]; // 类方法 // NSDate *date1 = [[NSDate ...
- IOS xib在tableview上的简单应用(通过xib自定义cell)
UITableView是一种常用的UI控件,在实际开发中,由于原生api的局限,自定义UITableViewCell十分重要,自定义cell可以通过代码,也可以通过xib. 这篇随笔介绍的是通过xib ...
- IOS的UI基础01
内容大纲:(红色表示博主个人重点记忆) 1.指定启动界面 带箭头就是首次启动的页面2.两个常用的快捷键3.拖线子控件注意事项4.一般情况下,UIView的容器是控制器的View.5.didRecive ...