/ 中存储网

Nginx服务器的启动、停止、平滑重启方法

2014-04-03 16:17:01 来源:itjs.cn
N启动Nginx

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

停止Nginx

可以发送向通信号给Nginx主进程的方式来停止Nginx,操作如下:

CentOS release 5.7 (Final)

[[email protected] ~]# ps -ef | grep nginx #查询master process主进程号

root 3266 1 0 Feb20 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

nobody 3267 3266 0 Feb20 ? 00:00:01 nginx: worker process

root 9282 9239 0 20:51 pts/0 00:00:00 grep nginx

[[email protected] ~]# kill -QUIT 3266 #从容停止Nginx

主进程可以处理以下的信号:

TERM, INT 快速关闭
QUIT 从容关闭
HUP 重载配置

用新的配置开始新的工作进程

从容关闭旧的工作进程

USR1 重新打开日志文件
USR2 平滑升级可执行程序。
WINCH 从容关闭工作进程

尽管你不必自己操作工作进程,但是,它们也支持一些信号:

TERM, INT 快速关闭
QUIT 从容关闭
USR1 重新打开日志文件
nginx.pid这个文件默认存放在Nginx安装目录logs目录下,该文件就是保存了Nginx当前的主进程号,可以直接向它发送系统信号,所以可以这样操作:

kill -QUIT cat /usr/local/nginx/logs/nginx.pid #注意这里是而不是'

快速停止Nginx

kill -TERM cat /usr/local/nginx/logs/nginx.pid

平滑重启Nginx

kill -HUP cat /usr/local/nginx/logs/nginx.pid`

小提示:nginx会检查nginx.conf配置是否正确,如果不正确,则不会进行重载