前端之家收集整理的这篇文章主要介绍了
用shell编写nginx脚本的启动,关闭,重加载,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
#!/bin/bash----默认执行shell方式
#chkconfig:23451080----加入到开机执行的方式
path="/usr/local/Nginx/sbin/Nginx"----源代码安装Nginx之后的启动路径
name="Nginxd"
test=0
log=/tmp/Nginxd.log----Nginx的日志
DATE=`date"+%F%H:%M:%S"`----获得系统时间命令
#判断Nginx是否已经安装或者判断源码安装之后启动的路径是否存在。
if[!-x$path];then
echo-n"${path}notinstalled!"
exit10
fi
#启动选项,对执行Nginx进行启动,启动成功或者失败都会输出提醒。
start(){
echo-n"starting$name;"
$path-t
test=$?
if[$test-eq0];then
touch/tmp/Nginx.pid
$path
echo"$DATEand$pathisstarting">>$log
else
echo"pleasecheckyouconfig"
exit20
fi
}
#停止Nginx服务,并把输出的信息重定向到指定的日志文件。
stop(){
echo-n"stopping$name;"
ps-ef|grepNginx|awk'{print$2}'|xargskill-9
test=0
if[$test-eq0];then
rm-rf/tmp/Nginx.pid
echo"$DATEand$pathisstop">>$log
fi
}
#重加载选项,将服务重新加载并识别服务是否正常运行。
reload(){
echo-n"reloading$name;"
# ps-ef|grepNginx|awk'{print$2}'|xargskill-9
$path-t
test=$?
if[$test-eq0];then
touch/tmp/reload.pid
echo"$DATEand$pathisreloading">>$log
rm-rf/tmp/reload.pid
else
echo"pleasecheckyouconfig"
exit20
fi
}
#整个脚本使用case方式来进行调用,当执行该脚本时会输出相关信息提醒。
case"$1"in
start)start;;
stop)stop;;
reload)reload;;
*)echo"/usr/local/Nginx/sbin/Nginxstart|stop|reload!";;
esac
######---退出shell之后,执行以下操作---######
1.对文件加权限
chmod+xNginxd
2.对文件执行
bashNginxd[start|stop|reload]