nginx的启动、停止、重载配置、验证配置
【1】启动
启动nginx系统方式:
(1)命令
nginx -c /usr/local/nginx/conf/nginx.conf
说明:-c 参数指定运行nginx系统的自定义配置文件。
若加:使用自定义配置文件。实例请参见下文【停止】nginx系统的方式贴图。
若不加:使用默认的nginx.conf(一般位于/usr/local/conf/nginx.conf,具体以实际情况为准)
如下实例效果:

即nginx系统选择默认的配置文件
(2)shell脚本
新建start.sh文件,输入内容:
nginx -p `pwd`/.. -c conf/nginx.conf
需要启动时,执行./start.sh 即可
【2】停止
关闭nginx系统方式:
(1)命令
当nginx启动后,可以使用“-s”参数向nginx管理进程(即master进程)发送信号来控制nginx:nginx -s signal
其中,signal可以是以下值:
[1] stop:快速关闭
[2] quit:安全关闭
[3] reload:重载配置文件
[4] reopen:重新打开一个log文件,主要用于日志切割
quit信号,通知nginx等待worker进程处理完当前的请求后退出,此命令只能由启动nginx的linux账户来执行。
reload信号,通知nginx重新载入配置文件nginx.conf。 除了使用reload外,nginx只会在启动时载入一次配置文件,之后对配置文件的修改不会实时对已经运行的nginx进程生效。
当运行这个命令时,master进程会尝试读取配置文件,如果配置文件没有问题(配置文件有问题怎么验证呢?请看下文):
master进程会启动新的worker进程来运行新的配置文件并处理请求,同时会通知老的worker进程不再处理新的请求并在处理完当前任务后退出。
如果配置文件存在问题不能执行,master进程会回退老配置文件继续工作,不会导致nginx进程整个异常退出。
linux的kill命令也可以达到相同的作用,假设nginx的master进程号(pid)是123456,那么 kill -s QUIT 123456 和 kill -s HUP 123456 这两条命令和前面quit、reload的作用相同。
关闭nginx命令1:
nginx -s quit
应用实例:

注意:必须使用启动nginx的用户执行此命令。
关闭nginx命令2:
kill -s quit PID
应用实例:

如上实例效果。
(2)shell脚本
新建stop.sh文件,输入内容:
nginx -p `pwd`/.. -c conf/nginx.conf -s quit
需要关闭系统时,执行./stop.sh即可
【3】重载配置
重新加载配置文件
(1)命令
nginx -s reload
应用实例如下:

注意:reload重新加载的配置,仍为启动nginx系统时运行的配置文件(应用场景:可能会因业务需求调整,对配置文件做修改,估需重新加载之,也称热部署)
(2)shell脚本
新建reload.sh文件,输入内容:
nginx -p `pwd`/.. -c conf/nginx.conf -s reload
需要重新加载配置文件时,执行./reload.sh即可。
【4】验证配置
为什么要验证配置呢?
试想一个场景,线上nginx系统正在正常运行。
现因某种原因,需重新加载一下配置文件,但是,在加载之前,你不确定刚编辑完成的配置文件是否正确(例如:语法等等规范性)
只有配置文件语法等等正确,加载后才会被系统重新读取并利用,否则,系统会回退原配置文件继续运行!!
因此,在加载配置文件之前,最好先验证一下配置文件的正确性。这样可以确保加载更有把握,更稳妥。
验证配置文件方式
(1)命令
验证默认配置文件
nginx -t
验证自定义配置文件
nginx -t -c /home/test/conf/nginx.conf
应用实例如下:

注意:两个红色框中的命令等价
(2)shell脚本
新建testconf.sh,输入内容:
nginx -p `pwd`/.. -c conf/nginx.conf -t
需要验证配置文件时,执行./testconf.sh即可。
备注:以上所有shell脚本,建议在conf同目录新建一个bin目录放置所有控制脚本即可。
Good Good Study, Day Day Up.
顺序 选择 循环 总结
nginx的启动、停止、重载配置、验证配置的更多相关文章
- nginx命令:启动,停止及命令参数详解
nginx命令:启动nginx 在Windows上安装好nginx后,我们需要启动nginx服务,启动nginx服务的命令行操作主要有两种方式,即 1 C:/nginx-0.8.53>nginx ...
- ubuntu 14.04(desktop amd 64) nginx 安装启动停止
sudo apt-get install nginx 关闭: sudo service nginx stop 启动: sudo nginx
- 【nginx】常用命令 启动|停止|重启|重新读取配置-centOS7
查看服务的当前状态 (flaskApi) [root@67 goTest]# systemctl status nginx.service ● nginx.service - The nginx H ...
- Squid 启动/停止/重载配置文件 命令
当你的 squid.conf 配置文档按照你的想法修改完以后,启动 squid 之旅就开始了. Squid安装设试命令: 1,初始化你在 squid.conf 里配置的 cache 目录 #/usr/ ...
- windows 下 nginx 的启动 停止 关闭
停止 nginx -s stop 重新加载配置文件(改动了参数无需重启,只有执行重新加载即可)nginx -s reload 退出 停止 关闭nginx -s quit
- 3)nginx的启动与停止、重启,linux配置对外端口
[启动] 启动代码格式:nginx安装目录地址 -c nginx配置文件地址例如: [root@LinuxServer sbin]# /usr/local/nginx/sbin/nginx -c /u ...
- nginx 命令行参数 启动 重启 重载 停止
今天和大家分享关于 nginx 的一些参数使用 首先,你应该安装了nginx CentOS 安装 nginx 这是很早之前的一篇博客,可以参考. 之前,我们如何去操作 nginx ##简单粗暴法 pk ...
- CentOS下nginx+php的配置及nginx开机启动配置
关闭防火墙 (不然外链接是访问不了 apache) service iptables stop 关闭安全系统 SELinux( 不然报403 访问页面错误 ) 1.Nginx安装主要在于配置文件的修改 ...
- 【Linux】宝塔上 GitLab数据迁移修改配置后nginx无法启动
背景: 服务器A 向 服务器B 迁移数据,修改配置重启.发现gitlab的 nginx 无法启动. 查找原因 gitlab-ctl tail 错误信息: 网上查了查,似乎是宝塔的问题, 原因应该是为了 ...
随机推荐
- python内建时间模块 time和datetime
时间模块 UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,世界标准时间.在中国为UTC+8.DST(Daylight Saving Time)即夏令时. ...
- ThinkPHP 文件上传到阿里云OSS上(干货)
参考:http://www.thinkphp.cn/extend/789.html 1.前往阿里云github下载SDK包:https://github.com/aliyun/aliyun-oss-p ...
- Tomcat以Daemon的方式启动(CentOS6&7)
1 前言 一直以来都觉得Tomcat以root身份运行非常不安全,故研究Tomcat如何以普通用户身份运行,以下是参考网络上的一些配置实现Tomcat以daemon方式运行于CentOS 6& ...
- 公开的免费WebService接口分享
天气预报Web服务,数据来源于中国气象局 Endpoint Disco WSDL IP地址来源搜索 WEB 服务(是目前最完整的IP地址数据) Endpoint Disco WSDL 随机英文 ...
- VS每次F5都重新编译代码,即使没有任何修改
遇到一个奇怪现象,不知道怎么设置了,突然工程的Release模式下,F5每次都要重新编译代码,而且是全部代码都重新编译 而Debug模式没问题 重启VS,重启机器,清理工程重新生成工程都无法解决 最后 ...
- Redis防止重複請求鎖功能
class Lock { const PREFIX_KEY = "MY_LOCK:"; static private $LOCKED = []; static public fun ...
- error_match问题
当nginx的sendfile处于on的情况下,在docker的环境下修改js文件会出现error_match的问题,应该要在nginx的配置中把sendfile设为off
- 利用pl/sql执行计划评估SQL语句的性能简析
一段SQL代码写好以后,可以通过查看SQL的执行计划,初步预测该SQL在运行时的性能好坏,尤其是在发现某个SQL语句的效率较差时,我们可以通过查看执行计划,分析出该SQL代码的问题所在. 那么,作为 ...
- 用vue制作饿了么首页(1)
无论是静态网页还是动态交互网页,实现原则是将他们分块,然后各个击破. 很明显的饿了么首页分为三个部分(组件), 上面的头部(商家信息), 中间路由 购物车 每部分先占住自己位置,然后挨个将这三部分分别 ...
- SpringBoot:四种读取properties文件的方式
前言 在项目开发中经常会用到配置文件,配置文件的存在解决了很大一份重复的工作.今天就分享四种在Springboot中获取配置文件的方式. 注:前三种测试配置文件为springboot默认的applic ...