码迷,mamicode.com
首页 > 其他好文 > 详细

Nginx启动脚本大家来找茬

时间:2015-04-10 07:12:19      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:nginx   老男孩教育   

今天讲到shell编程,我给大家讲解手工开发Nginx启动脚本时,写的脚本,调试发现有问题,
挺有意思的一个问题点,有2个地方有影响启动和停止的问题,有兴趣的可以研究下,
一周后公布结果!
[root@oldboy 03]# cat nginxd-good 
#!/bin/sh
RETVAL=0
path="/application/nginx"
. /etc/init.d/functions
start(){
if [ ! -f "$path/logs/nginx.pid" ]
 then
    [ -x $path/sbin/nginx ]||exit 1
    $path/sbin/nginx
    RETVAL=$?
    if [ -f $path/logs/nginx.pid ];then
      action "Nginx startup" /bin/true
    else
      action "Nginx startup" /bin/false
    fi
else
   echo "Nginx is running."
fi
return $RETVAL
}

stop(){
 if [ ! -f "$path/logs/nginx.pid" ]
 then
   echo "nginx is not running.need not to stop it."
 else
   [ -x $path/sbin/nginx ]||exit 1
   [ -f "$path/logs/nginx.pid" ]&&{
   kill `cat $path/logs/nginx.pid`
   RETVAL=$?
   }
   if [ ! -f "$path/logs/nginx.pid" ];then
     action "Nginx is stopped." /bin/true
   else
     action "Nginx is stopped." /bin/false
   fi
fi
return $RETVAL
}

case "$1" in
  start)
        start
        RETVAL=$?
        ;;
  stop)
        stop
        RETVAL=$?
        ;;
  restart)
        $0 stop
        sleep 2
        $0 start
        RETVAL=$?
        ;;
  reload)
        $path/sbin/nginx reload
        RETVAL=$?
        ;;
      *)
        echo "USAGE:$0 {start|stop|restart|reload}"
esac
exit $RETVAL


本文出自 “老男孩linux运维” 博客,请务必保留此出处http://oldboy.blog.51cto.com/2561410/1630676

Nginx启动脚本大家来找茬

标签:nginx   老男孩教育   

原文地址:http://oldboy.blog.51cto.com/2561410/1630676

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!