sunage001 发表于 2018-11-11 11:40:20

Nginx基础入门之Nginx命令控制说明

  当安装好了nginx后,还需要对其相关服务命令的掌握也是有必要,比如nginx的重启,重新加载配置文件等等,如下为nginx服务命令控制的相关说明
  1. nginx的命令的控制使用介绍
nginx的默认命令可选参数意义说明  /usr/local/nginx/sbin/nginx
-c 启动nginx时,通过-c参数加载指定nginx主配置文件/usr/local/nginx/sbin/nginx -p启动nginx时,使用-p参数指定Nginx的安装目录  /usr/local/nginx/sbin/nginx
  -g
启动nginx服务时,通过-g参数临时指定nginx的pid文件路径/usr/local/nginx/sbin/nginx -t通过-t检查nginx配置文件是否有误/usr/local/nginx/sbin/nginx -v显示nginx的版本信息/usr/local/nginx/sbin/nginx -V显示nginx相关./configure参数以及OS,G版本信息/usr/local/nginx/sbin/nginx -s stop  快速关闭nginx服务,等同于kill -s SIGTERM/SIGINT
  /usr/local/nginx/sbin/nginx
  -s quit
  优雅关闭nginx服务(先会关闭监听端口,停止接收新的连接,然后把当前正在处理的连接全部处理完,最后再退出进程)等同kill -s SIGQUIT ; 当然要想关闭nginx的某个work进程,使用:kill -s SIGWINCH
  /usr/local/nginx/sbin/nginx

  -s>重新加载nginx配置(事实上,Nginx会先检查新的配置项是否有误,如果全部正确就以“优雅”的方式关闭,再重新启动Nginx来实现这个目的。类似的,-s是发送信号,仍然可以用kill命令发送HUP信号来达到相同的效果)等同于kill -s SIGHUP   /usr/local/nginx/sbin/nginx
  -s reopen
日志回滚,使用-s reopen参数可以重新打开日志文件,这样可以先把当前日志文件改名或转移到其他目录中进行备份,再重新打开时就会生成新的日志文件。这个功能使得日志文件不至于过大,等同于kill -s SIGUSR1   /usr/local/nginx/sbin/nginx
  -t -q
测试配置选项时,使用-q参数可以不把error级别以下的信息输出到屏幕。例如:/usr/local/nginx/sbin/nginx-h 或-?显示命令的帮助  2. 关于nginx的平滑升级
  当Nginx服务升级到新的版本时,必须要将旧的二进制文件Nginx替换掉,通常情况下这是需要重启服务的,但Nginx支持不重启服务来完成新版本的平滑升级
  升级时包括以下步骤:
  1.通知正在运行的旧版本Nginx准备升级。通过向master进程发送USR2信号可达到目的。如下:
  kill -s SIGUSR2
  这时,运行中的Nginx会将pid文件重命名,例如将/usr/local/nginx/logs/nginx.pid重命为:/usr/local/nginx/logs
  /nginx.pid.old 这样新的Nginx才有可能启动成功。
  2.启动新版本的Nginx,可以使用以上介绍过的任意一种启动方法。这时通过ps命令可以发现新旧版本的Nginx在同时运行。
  3.通过kill命令向旧版本的master进程发送SIGQUIT信号,以“优雅”的方式关闭旧版本的Nginx。随后将只有新版本的Nginx服务运行,此时平滑升级完毕。

页: [1]
查看完整版本: Nginx基础入门之Nginx命令控制说明