前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >nginx启动shell脚本

nginx启动shell脚本

原创
作者头像
用户1503405
修改2021-10-29 14:05:55
1.2K0
修改2021-10-29 14:05:55
举报
文章被收录于专栏:棒棒小飞人棒棒小飞人

思路:nginx启动后会有nginx.pid文件在指定位置下,通过判断该文件是否存在。决定nginx是否已经启动。

代码语言:javascript
复制
#!/bin/bash
this is my first try to test write a shell to control nginx daemon
History 2015-08-04 masterliu
PATH=/usr/bin/:/usr/local/bin:/bin:/usr/sbin:/usr/local/sbin:/sbin:~/bin
export PATH
this file could be configured in nginx.conf
PIDfile=/usr/local/nginx/logs/nginx.pid
Nginxd=/usr/local/nginx/sbin/nginx
function start(){

    if [ -e $PIDfile ];then

    echo -e "nginx has already started\t\t[OK]" && exit 0

    fi

    $Nginxd &> /dev/null

    if [ $? = 0 ];then

            echo -e "nginx has started\t\t[OK]"

    else

            echo -e " nginx start failed\t\t[FAILED]"

    fi


}
function stop(){

    if [ ! -e $PIDfile ];then

            echo -e "nginx has already stopped\t\t[OK]" && exit 0

    fi

    #killall nginx

     $Nginxd -s stop &> /dev/null

    sleep 2

    if [ ! -e $PIDfile ];then

            echo -e "nginx has stopped\t\t[OK]";

    fi


}
function reload(){

    if [ ! -e $PIDfile ];then

            echo -e "nginx hasn't start\t\t[OK]" && exit 0

    fi

    $Nginxd -s reload && echo -e "nginx has reload\t\t[OK]" && exit 0


}
function status(){

    if [ ! -e $PIDfile ];then

            echo -e " nginx hasn't run\t\t[OK]"

    else

            echo -e " nginx is running\t\t[OK]"

    fi


}
case "$1" in
start)

    start


;;
stop)

    stop


;;
restart)

    stop;

    start;


;;
status)

    status


;;
reload)

    reload


;;
*)

    echo -e "\t start|stop|restart|status|reload\t"


;;
esac
</pre> 

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档