linux下如何重启nginx
2024-10-28 广告
Linux下nginx重启:
#重启:先Kill 再启动
kill -9 $(ps -A | grep nginx | cut -d "?" -f 1 ) &> /dev/null
/usr/local/nginx/sbin/nginx
#判断Nginx配置是否正确:修改配置文件后先检查一下是否正确,以免重启后Nginx出现错误影响服务器稳定运行
nginx -t -c /usr/nginx/conf/nginx.conf
#或者
/usr/nginx/sbin/nginx -t
#平滑重启
/usr/nginx/sbin/nginx -s reload
#查看进程
ps -ef | grep nginx
#Kill进程
kill -9 9999
扩展资料
linux下关闭nginx:
查询nginx主进程号
ps -ef | grep nginx
从容停止kill -QUIT主进程号
快速停止kill -TERM主进程号
强制停止kill -9 nginx
若nginx.conf配置了pid文件路径,如果没有,则在logs目录下
kill-信号类型'/usr/local/nginx/logs/nginx.pid'
参考资料来源:百度百科—linux
但是,现在,nginx增加了-s选项,实现nginx的停止,重新加载功能。
1. 如果是平滑的重启nginx,可以用./nginx -s reload命令实现nginx的平滑重启。
2. 如果是非平滑重启,则可以先停止nginx,然后再启动:
./nginx -s stop && ./nginx
当我们修改nginx配置后,希望重启nginx以便让nginx生效,此时为了保证nginx在重启阶段还能够提供正常的服务,一般采用平滑重启的方式(reload)重启nginx。此时,nginx会加载新的配置,然后fork出新的worker进程。同时,master进程会向老的worker进程发送信号,告诉老的worker进程当前的情况。老的worker进程受到master进程的信号后,如果当时没有处理请求则会退出,如果正在处理请求,则老的worker进程会处理完请求然后退出。nginx就是通过这种方式去reload新的配置,从而使得在重启的过程中,仍然可以提供服务。
但是,现在,nginx增加了-s选项,实现nginx的停止,重新加载功能。
1. 如果是平滑的重启nginx,可以用./nginx -s reload命令实现nginx的平滑重启。
2. 如果是非平滑重启,则可以先停止nginx,然后再启动:
./nginx -s stop && ./nginx
当我们修改nginx配置后,希望重启nginx以便让nginx生效,此时为了保证nginx在重启阶段还能够提供正常的服务,一般采用平滑重启的方式(reload)重启nginx。此时,nginx会加载新的配置,然后fork出新的worker进程。同时,master进程会向老的worker进程发送信号,告诉老的worker进程当前的情况。老的worker进程受到master进程的信号后,如果当时没有处理请求则会退出,如果正在处理请求,则老的worker进程会处理完请求然后退出。nginx就是通过这种方式去reload新的配置,从而使得在重启的过程中,仍然可以提供服务。
kill -QUIT `ps -ef|grep nginx`
启动:nginx -c /usr/local/naginx/etc/nginx.conf
具体路径你自己修改下
也可以执行 nginx -s reload 进行重启