nginx平滑升级的操作教程
发布时间 - 2017-07-19 00:00:00 点击率:次平滑升级概述
nginx方便地帮助我们实现了平滑升级。其原理简单概括,就是:
(1)在不停掉老进程的情况下,启动新进程。
(2)老进程负责处理仍然没有处理完的请求,但不再接受处理请求。
(3)新进程接受新请求。
(4)老进程处理完所有请求,关闭所有连接后,停止。
这样就很方便地实现了平滑升级。一般有两种情况下需要升级nginx,一种是确实要升级nginx的版本,另一种是要为nginx添加新的模块。
升级过程
具体的操作也很简单,如下:
(0)查看当前版本
在存放Nginx的可执行文件的目录下输入:
复制代码代码如下:
./nginx -V
(1)下载新的Nginx版本并编译。
复制代码代码如下:
wget nginx-1.0.11.tar.gz
tar zxvf nginx-1.0.11.tar.gz
cd nginx-1.0.11
./configure --add-module=/customized_module_0 --add-module=/customized_module_1
make
注意不要进行make install
下载:
[root@liuawblizfpws~]#wget *.*.tar.gz (版本号已修改)
解压:
[root@liuawblizfpws ~]#tar zxvf nginx-0.*.*.tar.gz (版本号已修改)
这里顺便把nginx的版本号修改了,起到一定的安全作用。
修改源码文件:
[root@liuawblizfpws ~]#vim nginx-0.*.*/src/core/nginx.h #define NGINX_VERSION "*.$.&" (版本号) #define NGINX_VER "net/" NGINX_VERSION (服务器名字)重新编译之前需要查看之前的nginx的安装信息:
[root@liuawblizfpws ~]#/usr/local/nginx/sbin/nginx -V得到信息(路径因人而异):
nginx: configure arguments: --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module编译,但不安装;在编译目录下的objs目录下的nginx文件即是新的执行文件:
[root@liuawblizfpws nginx-0.*.*]#./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module [root@liuawblizfpws nginx-0.*.*]#make备份原有nginx文件:
[root@liuawblizfpws ~]#mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old将已经编译好的nginx文件复制到相应的执行路径下:
cp ~/nginx-0.*.*/objs/nginx /usr/local/nginx/sbin/nginx测试,以免不能平滑升级:
[root@liuawblizfpws ~]#/usr/local/nginx/sbin/nginx -t nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful测试通过则将nginx.pid修改为您nginx.pid.oldbin,同时启动新的nginx:
[root@liuawblizfpws ~]#kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`退出原nginx:
[root@liuawblizfpws ~]#kill -QU查验:IT `cat /usr/loca/nginx/logs/nginx.pid.oldbin`
[root@liuawblizfpws ~]#curl -I netonline.me HTTP/1.1 200 OK Server: net/*.$.& Date: Thu, 09 Dec 2010 05:13:36 GMT
# nginx
# 目录下
# 实现了
# 情况下
# 为您
# 也很
# 因人而异
# 即是
# 有两种
# 但不
# 要为
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在建站宝盒中设置产品搜索功能?
php结合redis实现高并发下的抢购、秒杀功能的实例
黑客如何通过漏洞一步步攻陷网站服务器?
大学网站设计制作软件有哪些,如何将网站制作成自己app?
如何获取免费开源的自助建站系统源码?
Laravel如何实现多级无限分类_Laravel递归模型关联与树状数据输出【方法】
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
高性能网站服务器配置指南:安全稳定与高效建站核心方案
微信小程序 HTTPS报错整理常见问题及解决方案
济南网站建设制作公司,室内设计网站一般都有哪些功能?
Windows10如何更改计算机工作组_Win10系统属性修改Workgroup
如何用虚拟主机快速搭建网站?详细步骤解析
java中使用zxing批量生成二维码立牌
Java垃圾回收器的方法和原理总结
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
Laravel如何集成Inertia.js与Vue/React?(安装配置)
利用python获取某年中每个月的第一天和最后一天
如何在 Pandas 中基于一列条件计算另一列的分组均值
JavaScript实现Fly Bird小游戏
如何在阿里云完成域名注册与建站?
零基础网站服务器架设实战:轻量应用与域名解析配置指南
Swift中swift中的switch 语句
Linux系统命令中screen命令详解
Laravel如何监控和管理失败的队列任务_Laravel失败任务处理与监控
海南网站制作公司有哪些,海口网是哪家的?
香港服务器选型指南:免备案配置与高效建站方案解析
如何在建站主机中优化服务器配置?
简单实现Android验证码
Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践
html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】
Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧
JS经典正则表达式笔试题汇总
Laravel如何使用Sanctum进行API认证?(SPA实战)
Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制
Laravel DB事务怎么使用_Laravel数据库事务回滚操作
公司网站制作需要多少钱,找人做公司网站需要多少钱?
Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】
Laravel Blade模板引擎语法_Laravel Blade布局继承用法
php json中文编码为null的解决办法
android nfc常用标签读取总结
如何快速打造个性化非模板自助建站?
Python制作简易注册登录系统
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】
js代码实现下拉菜单【推荐】
如何快速搭建FTP站点实现文件共享?
Laravel怎么防止CSRF攻击_Laravel CSRF保护中间件原理与实践
如何做网站制作流程,*游戏网站怎么搭建?
Laravel如何使用Telescope进行调试?(安装和使用教程)
如何将凡科建站内容保存为本地文件?
上一篇:fpm使用打包工具
上一篇:fpm使用打包工具


IT `cat /usr/loca/nginx/logs/nginx.pid.oldbin`