Nginx的管理以及升级操作

Nginx的管理以及升级操作

如果Nginx启动了,可以使用nginx的命令来进行管理

  • 查看进程:ps -ef | grep nginx
  • 平滑启动:nginx -s reload–>不停止nginx的情况下,无痕重启;
    • 或者是:kill -HUP 单引号(cat /var/run/nginx.pid)
    • nginx.pid就是nginx启动的进程号;
    • 这个pid的位置取决于你源码安装指定的位置,yum安装默认就是那;
    • 平滑启动的意思是在不停止nginx的情况下,重启nginx,重新加载配置文件,启动新的工作线程,完美停止旧的工作线程。
  • 完美停止nginx
    • kill -QUIT 单引号(cat /var/run/nginx.pid)
  • 如果是想快速停止nginx
    • kill -TERM 单引号(cat /var/run/nginx.pid)
    • kill -INT 单引号(cat /var/run/nginx.pid)
  • 如果想要完美停止工作进程–>这个主要用于平滑升级
    • kill -WINCH nginx.pid
  • 强行停止nginx
    • pkill -9 nginx
  • 检查nginx的配置文件是否正确:
    • nginx -t
  • 停止nginx:
    • nginx -s stop
    • pkill nginx
  • 查看nginx的配置信息
    • nginx -V
#查看nginx进程
[root@Test0 ~]# ps -elf |grep nginx
1 S root       9482      1  0  80   0 - 11492 sigsus 12:12 ?        00:00:00 nginx: master process nginx
5 S nginx      9483   9482  0  80   0 - 11606 ep_pol 12:12 ?        00:00:00 nginx: worker process
.........

#平滑启动nginx
	#注意这个9482是上面的命令提示出来的nginx的pid号
[root@Test0 ~]# kill -HUP 9482
	#或者直接nginx -s reload
[root@Test0 ~]# nginx -s reload

#停止nginx
[root@Test0 ~]# nginx  -s stop
	#或者使用
[root@Test0 ~]# kill -TERM 9616
	#或者
[root@Test0 ~]# kill -INT 9623
	#强制停止nginx
[root@Test0 ~]# pkill -9 nginx

#查看nginx的信息
[root@Test0 ~]# nginx  -V
nginx version: LJW/nginx
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
.........

#检查nginx的配置文件语法-->显示ok代表没有问题
[root@Test0 ~]# nginx -t
nginx: the configuration file /usr/local/nginx//conf/nginx.conf syntax is ok

Nginx的升/降级操作

  • nginx运行了一段时间,有可能需要把版本升级或者是降级操作;那么我们现场也得需要掌握如何升级/降级nginx
  • nginx的升级和降级都可以分为四个步骤
    • 软件准备
    • 预编译
    • 编译、
    • 配置

–>准备工作如下:

#首先确定一下nginx的版本-->由于一开始的时候我们修改过源代码;导致没能看到nginx的版本-->但是我开始的时候我记得就是nginx-1.16版本
[root@Test0 ~]# nginx -V
nginx version: LJW/nginx
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
................

#首先我们准备一下nginx的1.17版本
[root@Test0 ~]# cd /usr/local/src/
[root@Test0 src]# ls nginx-1.17.10.tar.gz 
nginx-1.17.10.tar.gz

#再看一下nginx是在启动状态
[root@Test0 src]#  ps -ef | grep nginx

–>预编译、编译

#解压nginx-1.17的源码包-->记住要进入到nginx的源码包目录-->预编译需要哦
[root@Test0 src]# tar -xf nginx-1.17.10.tar.gz 
[root@Test0 src]# cd nginx-1.17.10

#预编译-->因为是升级操作-->原来我们是怎么编译的,后面也得怎么编译
	#先看看原来编译的参数
[root@Test0 nginx-1.17.10]# nginx -V
...............
configure arguments: --prefix=/usr/local/nginx/ --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module
	#确认好了之后就开始预编译
[root@Test0 nginx-1.17.10]# ./configure --prefix=/usr/local/nginx/ --user=nginx --group=nginx --with-http_stub_status_module --with-http_ssl_module

#编译-->注意千万别安装
[root@Test0 nginx-1.17.10]# make 

#到这里位置基本完成

–>最后是执行升级/降级操作

  • 备份就版本的nginx执行文件
  • 替换新版本的nginx执行文件
  • 测试一段时间后退出旧版本
#备份旧版本的nginx可执行文件
[root@Test0 nginx-1.17.10]# mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old

#替换新的nginx执行文件
[root@Test0 nginx-1.17.10]# cp  objs/nginx /usr/local/nginx/sbin/

#测试一下是否正常
[root@Test0 nginx-1.17.10]# /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /usr/local/nginx//conf/nginx.conf syntax is ok
	#启动nginx
[root@Test0 nginx-1.17.10]# nginx  -s reload

#查一下nginx信息
[root@Test0 nginx-1.17.10]# nginx  -V
nginx version: nginx/1.17.10 #-->这里已经看到升级成功
............

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/5945.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在华为做了三年软件测试被裁了,我该怎么办

近年来,随着经济环境的变化和企业战略的调整,员工被裁员的情况变得越来越普遍。无论是因为企业经营困难还是因为业务调整,员工们都可能面临被裁员的风险。如果你也遇到了这样的情况,那么你应该怎么办呢? 首先&#xf…

centos7 SystemV 开机自启动脚本配置方法 redis集群三主三从

centos7 SystemV 开机自启动脚本配置方法 redis集群三主三从1、安装redis集群2、编写redis启动脚本2.1、建立启动脚本2.2、复制多份redis启动脚本给集群使用2.3、添加可执行权限3、配置开机自启动1、安装redis集群 参考: redis三主三从集群安装 2、编写redis启动脚本 2.1、建…

RabbitMQ 07 发布订阅模式

发布订阅模式 发布订阅模式结构图: 比如信用卡还款日临近了,那么就会给手机、邮箱发送消息,提示需要去还款了,但是手机短信和邮件发送并不一定是同一个业务提供的,但是现在又希望能够都去执行,就可以用到发…

HTTP协议发展历程-HTTP2【协议篇】

HTTP2.0 HTTP2为了解决HTTP1.1中存在的问题。其中慢启动和TCP连接竞争是TCP本身导致的,在H2中依赖的还是TCP协议,不过思路换了一下。 HTTP/2 的思路就是一个域名只使用一个 TCP 长连接来传输数据,这样整个页面资源的下载过程只需要一次慢启动…

【Elastic (ELK) Stack 实战教程】04、ElasticSearch 集群进阶及优化

目录 一、ES 集群故障转移 1.1 什么是故障转移 1.2 模拟节点故障 1.2.1 重新选举 1.2.2 主分片调整 1.2.3 副本分片调整 二、ES 文档路由原理 2.1 文档的创建流程 2.2 文档的读取流程 2.3 文档批量创建的流程 2.4 文档批量读取的流程 ​三、ES扩展集群节点 3.1 …

【目标检测论文阅读笔记】Multi-scene small object detection with modified YOLOv4

Abstract. 小目标检测的应用存在于我们日常生活中的许多不同场景中,该课题也是目标检测与识别研究中最难的问题之一。因此,提高小目标检测精度不仅在理论上具有重要意义,在实践中也具有重要意义。然而,当前的检测相关算法在这项任…

Node.js学习笔记——Express.js

一、express介绍 express是一个基于Node.js平台的极简、灵活的WEB应用开发框架,官方网址:https://www.expressjs.com.cn/ 二、express使用 2.1express下载 express本身是一个npm包,所以可以通过npm安装。 npm init npm i express 2.2expr…

Java接口

目录 抽象类 抽象类的概述 如何使用抽象类 抽象类的使用 抽象特征 关于抽象需要注意的几个事情 接口(interface) 常量 如何实现接口 接口与接口多继承 接口的注意事项 抽象类 抽象类的概述 父类中的方法,被它的子类们重写,子类各自的实现都不…

《花雕学AI》02:人工智能挺麻利,十分钟就为我写了一篇长长的故事

ChatGPT最近火爆全网,上线短短两个多月,活跃用户就过亿了,刷新了历史最火应用记录,网上几乎每天也都是ChatGPT各种消息。国内用户由于无法直接访问ChatGPT,所以大部分用户都无缘体验。不过呢,前段时间微软正…

Vulnhub:DC-3靶机

kali:192.168.111.111 靶机:192.168.111.250 信息收集 端口扫描 nmap -A -v -sV -T5 -p- --scripthttp-enum 192.168.111.250 通过nmap得知目标CMS为Joomla 3.7.0 漏洞利用 搜索发现该版本存在sql注入 利用sqlmap获取目标后台用户密码 sqlmap -u &…

测试行业3年经验,面试想拿 17K,HR说你只值 8K,该如何回答或者反驳?

面试最尴尬的不是被拒绝,而是直接说你不值那个价格... 最近朋友在面试的时候,HR 突然来了句:你只值 7K。朋友后面和我说了这个事。我想如果是我处在这种情况下,自己并不能很好地回答或者反驳。不知道大家会怎么回答或者反驳&…

基于vivado(语言Verilog)的FPGA学习(4)——FPGA选择题总结(针对华为逻辑岗实习笔试)

基于vivado(语言Verilog)的FPGA学习(4)——FPGA选择题总结 文章目录基于vivado(语言Verilog)的FPGA学习(4)——FPGA选择题总结1. 消除险象2. 建立时间和保持时间3.ISE4.DMA5.仿真器6…

【Linux】-- 权限和Shell运行原理

目录 Shell的运行原理 用户切换 su - / su sudo 权限 chmod chown chgrp 八进制方法修改文件属性 目录权限 粘滞位 umask 自定义默认权限 Shell的运行原理 广义上,Linux发行版 Linux内核 外壳程序 Linux 从广义上来理解它是一个操作系统 而从狭义上…

关于Map类的使用小结

目录 1. 常用Map类和区别 2. HashMap工作原理 2.1 Put()执行过程 2.2 扩容机制 3. ConcurrentHashMap 3.1 工作原理 3.2 JDK7分段锁的优缺点 1. 常用Map类和区别 Map类包含:HashMap、HashTable、LinkedHashMap、TreeMap。 1) 从功能上区分。 HashMap&…

多线程进阶学习11------CountDownLatch、CyclicBarrier、Semaphore详解

CountDownLatch ①. CountDownLatch主要有两个方法,当一个或多个线程调用await方法时,这些线程会阻塞 ②. 其它线程调用countDown方法会将计数器减1(调用countDown方法的线程不会阻塞) ③. 计数器的值变为0时,因await方法阻塞的线程会被唤醒,继续执行 public static void m…

SpringBoot学习笔记上

文章目录1 SpringBoot1.1 SpringBoot介绍1.2 SpringBoot创建的三种方式1.3SpringBootApplication注解1.4 SpringBoot的配置文件1.5多环境配置1.6 使用jsp1.7 ComnandLineRunner 接口 , ApplcationRunner接口2 Web组件2.1 拦截器2.2 Servlet2.3 过滤器Filter2.4 字符…

gpt3官网中文版-人工智能软件chat gpt安装

GPT-3(Generative Pre-trained Transformer 3)是一种自然语言处理模型,由OpenAI研发而成。它是GPT系列模型的第三代,也是目前最大、最强大的自然语言处理模型之一,集成了1750亿个参数,具有广泛的使用场景&a…

Flutter Row 实例 —— 新手礼包

大家好,我是 17。 本文在 3.31 日全站综合热榜第一。 新手礼包一共 3 篇文章,每篇都是描述尽量详细,实例讲解,包会! Flutter Row 实例 —— 新手礼包Flutter TextField UI 实例 —— 新手礼包Flutter TextField 交…

靠近用户侧和数据,算网融合实现极致协同

游弋自如的生产力,在边缘。IMMENSE、36氪|作者 1846年1月,纽约。 一行长短不一的电码顺着通讯线路飞往130公里开外的费城,这是华尔街的巨头们首次使用电报传输讯息,更具有金钱意味的是,电力通讯的成功&am…

【蓝桥杯集训·周赛】AcWing 第96场周赛

文章目录第一题 AcWing 4876. 完美数一、题目1、原题链接2、题目描述二、解题报告1、思路分析2、时间复杂度3、代码详解第二题 AcWing 4877. 最大价值一、题目1、原题链接2、题目描述二、解题报告1、思路分析2、时间复杂度3、代码详解第三题 AcWing 4878. 维护数组一、题目1、原…
最新文章