当前位置: 首页 > news >正文

nginx平滑升级 不暂停服务

有的时候nginx的服务不能中断,只能平滑升级

nginx编译安装参考:链接

1.备份旧的nginx主程序

这里使用mv而不是cp,避免后面无法复制新版

mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak

2.编译新版本nginx

这里根据你的情况配置,但是不要make install

./configure  。。。。。。
make

make后会在编译的目录objs下生成新的主程序

3.替换nginx主程序

cp objs/nginx /usr/local/nginx/sbin/nginx

4.检查新版本nginx是否正常运行

/usr/local/nginx/sbin/nginx -t

提示类似如下内容说明配置文件正常
在这里插入图片描述

5.查找现有的pid位置

find / -name "nginx.pid"

6.启用新的nginx.pid

这里的pid换成你找到的pid位置,比如我的在/usr/local/nginx/logs/nginx.pid

kill -USR2 $(cat /usr/local/nginx/logs/nginx.pid)

运行上面的命令会自动生成旧的pid,用于平滑结束
检查是否新的pid已经开启了

ls /usr/local/nginx/logs/nginx.pid.oldbin

7.等旧的nginx处理完现有的之后自动关闭(平滑结束)

kill -QUIT $(cat /usr/local/nginx/logs/nginx.pid.oldbin)

8.检查nginx运行状态

systemctl status nginx

查看版本和编译信息

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

相关文章:

  • TDengine 数据写入SQL
  • 在Java实际项目中什么情况才会使用到消息队列?
  • 接口自动化测试框架公共组件之测试数据管理
  • ios使用swift调用deepseek或SiliconFlow接口
  • 稚晖君级硬核:智元公司开源机器人通信框架AimRT入驻GitCode平台
  • DeepSeek 助力 Vue3 开发:打造丝滑的表格(Table)示例3: 行选择
  • Golang的容器化部署实践要点与技巧总结
  • 【LeetCode 热题 100】438. 找到字符串中所有字母异位词 | python 【中等】
  • 找一款好用的手机和电脑可以同步的便签备忘录
  • 【selenium工具操作web页面中的下拉框元素 】
  • [特殊字符] Django 常用命令
  • 使用OpenCV和MediaPipe库——实现人体姿态检测
  • 【高并发】深入解析 Netty:3W 学习法 + Java 实战 + 开源项目推荐
  • 【leetcode hot 100 240】搜索二维矩阵Ⅱ
  • flutter环境最新踩坑
  • 什么是TiDB,什么是分布式数据库?它和 MySQL 比优缺点是什么?
  • 【大模型学习】第十一章 什么是算力
  • vue实现日历签到效果
  • 代码随想录算法训练营第三十二天 | 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯
  • Cryptography 与 PyCryptodome 源码级解析
  • 单页网站seo/万网官网首页
  • 如何为旅游网站店铺做推广营销/企业网站seo多少钱
  • 企业网站模板 下载 论坛/友情链接教程
  • 长葛做网站/网页制作软件有哪些
  • 时空网站建设的可行性分析/营销策略有哪些4种
  • dedecms导购网站模板/手游推广平台代理