Nginx重启的简单命令

当我们在Nginx中安装完一个新程序之后就需要进行重启,其实在重启的时候有个小技巧。kill命令就是一个十分神奇的命令。下面我们就来学些有关kill命令如何来进行Nginx重启的。

如果机器比较慢,Nginx重启kill进程时一瞬间杀不完,再执行一次即可。这种重启方式不是特别安全,如果配置有误,则会重启失败,需要重新修改配置文件然后再启动,期间会消耗一点时间。不过对于目前普遍还是不怎么严格的http界而言,这点时间还不至于产生太大损失,只要不是在关键时刻搞出来就好。如果希望沿用这种重启办法,我提议还是先好好测试吧。

后来我在nginx.net上看到了一种更奇妙的Nginx重启

kill -HUP $pid($pid就是nginx master进程的进程号)

我一般这样用

kill -HUP `cat /data/nginx/logs/nginx.pid`

这种方式的好处是实现“平滑重启”,在ps -aux中可以看到,nginx首先启动新进程,旧的进程仍然提供服务,在一段时间后,旧的进程服务结束就自动关闭,剩下新进程继续服务。但是这种方式也是有缺点的,如果配置文件有误,或者资源冲突,则重启失效,但nginx并没有任何的提示!这就会时常发现改动的配置文件没有生效,又比较难找到问题。

所以,最后杂和了一下问题,弄了一个nginx.sh,这个版本的nginx.sh还是没有解决kill -HUP的资源冲突的问题,但解决了配置文件的问题。资源冲突的比如80端口被占用、日志文件目录没有创建这种的。

参考网上的做法,用如下脚本控制:

#!/bin/sh

BASE_DIR='/usr/local/'

${BASE_DIR}nginx/sbin/nginx -t -c ${BASE_DIR}nginx/conf/nginx.

conf >& ${BASE_DIR}nginx/logs/nginx.start

info=`cat ${BASE_DIR}nginx/logs/nginx.start`

if [ `echo $info | grep -c "syntax is ok" ` -eq 1 ]; then

if [ `ps aux|grep "nginx"|grep -c "master"` == 1 ]; then

kill -HUP `cat ${BASE_DIR}nginx/logs/nginx.pid`

echo "ok"

else

killall -9 nginx

sleep 1

${BASE_DIR}nginx/sbin/nginx

fi

else

echo "######## error: ########"

cat ${BASE_DIR}nginx/logs/nginx.start

fi

以上就是对Nginx重启的详细介绍希望大家有所收获。

(0)

相关推荐

  • windows XP中,定时关机/重启的简单命令

    有时我们人不在电脑旁,但需要对电脑进行定时关机和定时重启,这里介绍windows XP最简单的定时关机和重启命令. 步骤/方法 01 如果你想在22点的时候关机,可以在[开始菜单]→[运行]中,输入& ...

  • Centos上Apache重启,mysql重启,nginx重启方法

    Centos上Apache重启,mysql重启, nginx 重启方法 1.重启 apache service httpd restrat /etc/init.d/httpd stop /etc/in ...

  • centos7重启网卡的命令(centos7命令行配置ip地址)

    centos7重启网卡的命令(centos7命令行配置ip地址)

  • freebsd下重启网络相关命令分析

    重启网络命令 sh /etc/rc.conf or /etc/netstart 网卡重启命令如下 /etc/rc.d/netif restart 重启ipfw sh /etc/rc.firewall ...

  • 五个Linux简单命令帮你解决系统性能问题

    事实上,利用一些简单的Linux命令,可以发现许多管理主机的细节问题并且能迅速而简单地解决性能问题。 一、top 对许多管理员来说,最新学会的就是TOP命令,它可以显示出当前运行的所有内核任务,并且提 ...

  • Windows7关机.重启.待机.休眠命令通过Autohotkey可快速实现

    Windows7下一些关机、重启、待机、休眠命令,通过Autohotkey可实现快速关机等操作。 ;立即关机,无提示、延时。 shutdown -p ;立即重启 shutdown -r -t 00 ; ...

  • Windows7关机.重启.待机.休眠命令

    Windows7关机、重启、待机、休眠命令 Windows7下一些关机、重启、待机、休眠命令,通过Autohotkey可实现快速关机等操作。 ;立即关机,无提示、延时。 shutdown -p ;立即 ...

  • Linux系统各种重启命令

    在进行Linux系统操作的时候,如果出现更换硬件、更改系统配置及死机等情况时,就需要对电脑进行重启,而不同的情形重启的方式也不同,即使用的命令不同,下面小编就给大家介绍下Linux下不同情形的重启方法 ...

  • linux简单基础命令:[3]linux移动与重命名

    本系列一直在介绍简单命令,有利于读懂以及实验,这次将介绍linux系统中的移动与重命名命令. 操作方法 01 第一步,以root身份登录虚拟机,如下图所示. 02 第二步,在根目录下新建两个个文件文件 ...