OS:CentOS/Redhat 系列

并在 Centos 6.7 和 Centos 7.2 上测试正常

#!/bin/bash
#
# auth: daxin
# time: 2018/07/10
#
# nginx start nginx web server
#
# chkconfig: - 10 90
# description: Start, stops and reload nginx web server
#
# config: /usr/local/nginx/conf/nginx.conf
# config: /usr/local/nginx/conf/vhosts
#
### BEGIN INIT INFO
# Provides: nginx
# Required-Start:
# Required-Stop:
# Default-Start: 3
# Default-Stop:
# Short-Description: start and stop nginx web server
# Description: Start, stop and reload nginx web server
### END INIT INFO # Source function library
. /etc/init.d/functions NGINX_DIR="/usr/local/nginx"
NGINX="${NGINX_DIR}/sbin/nginx"
NGINX_CONF="${NGINX_DIR}/conf/nginx.conf"
PROG=$(basename $NGINX)
LOCK_FILE="${NGINX_DIR}/${PROG}.lock" # check Command exists
if [ ! -x ${NGINX} ]; then
echo -n $"${NGINX} does not exists."; warning; echo
exit 5
fi function start() {
[ -f $NGINX_CONF ] || exit 6
$NGINX -c $NGINX_CONF
retval=$?
if [ $retval -eq 0 ]; then
touch $LOCK_FILE
action "Starting $PROG" /bin/true
else
action "Starting $PROG" /bin/false
fi
return $retval
} function stop() {
pkill $PROG
retval=$?
if [ $retval -eq 0 ]; then
rm -f $LOCK_FILE
action "Stop $PROG" /bin/true
else
action "Stop $PROG" /bin/false
fi
return $retval
} function restart() {
configtest_q || return 6
stop
start
} function reload() {
configtest_q || return 6
nginx_main_process=$(ps aux | grep $NGINX | grep -v grep | awk '{print $2}')
kill -HUP $nginx_main_process
retval=$?
if [ $retval -eq 0 ]; then
action "Reload $PROG" /bin/true
else
action "Reload $PROG" /bin/false
fi
return $retval
} function configtest_q() {
$NGINX -t -c $NGINX_CONF
} function status() {
nginx_main_process=$(ps aux | grep $NGINX | grep -v grep | awk '{print $2}')
if [ -z $nginx_main_process ]; then
action "$PROG is not running" /bin/false
else
action "$PROG is runing" /bin/true
fi
} case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
restart
;;
configtest)
configtest_q
;;
status)
status
;;
*)
echo $"Usage: $0 {start|stop|reload|configtest|status|restart}"
exit 2
esac
  

  

Shell脚本 - nginx启动脚本的更多相关文章

  1. shell脚本之nginx启动脚本、统计日志字段、for循环实战、跳板机

    1.NGINX启动脚本 #!/bin/bash # chkconfig: 235 32 62 # description: nginx [ -f /etc/init.d/functions ] &am ...

  2. linux nginx 启动脚本

    linux nginx 启动脚本 [root@webtest76 ~]# vi /etc/init.d/nginx #!/bin/bash # nginx Startup script for the ...

  3. Nginx 启动脚本/重启脚本

    第一步先运行命令关闭nginx sudo kill `cat /usr/local/nginx/logs/nginx.pid` 第二步 vi /etc/init.d/nginx 输入以下内容 #!/b ...

  4. nginx启动脚本,手动编辑

    nginx启动脚本,手动编辑 #! /bin/bash # chkconfig: - # description: nginx service XDIR=/www/server/nginx DESC= ...

  5. centos LNMP第一部分环境搭建 LAMP LNMP安装先后顺序 php安装 安装nginx 编写nginx启动脚本 懒汉模式 mv /usr/php/{p.conf.default,p.conf} php运行方式SAPI介绍 第二十三节课

    centos  LNMP第一部分环境搭建 LAMP安装先后顺序  LNMP安装先后顺序 php安装 安装nginx  编写nginx启动脚本   懒汉模式  mv   /usr/local/php/{ ...

  6. Nginx 启动脚本

    Nginx 启动脚本 1.vim /etc/init.d/nginx #!/bin/bash # chkconfig: - 30 21 # description: http service. # S ...

  7. LNMP 1.4 nginx启动脚本和配置文件

    编写Nginx启动脚本,写入下面这段,授权755 vim /etc/init.d/nginx #!/bin/bash # chkconfig: - # description: http servic ...

  8. nginx启动脚本和配置文件

    1.编写Nginx启动脚本,并加入系统服务 vim /etc/init.d/nginx并在其中写入如下内容:#!/bin/bash# chkconfig: - 30 21# description: ...

  9. nginx启动脚本(class练习)

    说明:使用类的方式编写程序启动脚本(练习) 1 #!/usr/bin/env python import sys import os from subprocess import Popen,PIPE ...

随机推荐

  1. MyBatis原理系列

    原理分析之一:从JDBC到Mybatis 原理分析之二:框架整体设计 原理分析之三:初始化(配置文件读取和解析) 原理分析之四:一次SQL查询的源码分析

  2. 【Python】爬虫与反爬虫大战

    爬虫与发爬虫的厮杀,一方为了拿到数据,一方为了防止爬虫拿到数据,谁是最后的赢家? 重新理解爬虫中的一些概念 爬虫:自动获取网站数据的程序反爬虫:使用技术手段防止爬虫程序爬取数据误伤:反爬虫技术将普通用 ...

  3. 转:概率主题模型简介 --- ---David M. Blei所写的《Introduction to Probabilistic Topic Models》的译文

    概率主题模型简介 Introduction to Probabilistic Topic Models      转:http://www.cnblogs.com/siegfang/archive/2 ...

  4. Android APP性能优化(最新总结)

    导语   安卓大军浩浩荡荡,发展已近十个年头,技术优化日异月新,如今Android 8.0 Oreo 都发布了,Android系统性能已经非常流畅了.但是,到了各大厂商手里,改源码自定系统,使得And ...

  5. BZOJ3714 [PA2014]Kuglarz 【最小生成树】

    题目链接 BZOJ3714 题解 我们如果知道了所有的数,同样就知道了所有的前缀和 相反,我们如果求出了所有前缀和,就知道了所有的数,二者是等价的 对于一个区间\([l,r]\)如果我们知道了前缀和\ ...

  6. HDU4812 D tree 【点分治 + 乘法逆元】

    D树 时间限制:10000/5000 MS(Java / Others)内存限制:102400/102400 K(Java / Others) 总共提交5400个已接受的提交1144 问题描述 南京理 ...

  7. Django CRM系统

    本节内容 业务痛点分析 项目需求讨论 使用场景分析 表结构设计 业务痛点分析 我2013年刚加入老男孩教育的时候,学校就一间教室,2个招生老师,招了学生后,招生老师就在自己的excel表里记录一下,每 ...

  8. Codeforces Round #514 (Div. 2) C. Sequence Transformation(递归)

    C. Sequence Transformation 题目链接:https://codeforces.com/contest/1059/problem/C 题意: 现在有1~n共n个数,然后执行下面操 ...

  9. C#学习之自定义数组及其排序

    在C#中对数组的定义比较灵活.这里着重说一下自定义数组和Array类的排序. 在Array类中通过属性Length就可以获取整个数组中数据的数量,可以通过foreach迭代数组. 使用Rank属性可以 ...

  10. Leetcode 295. 数据流的中位数

    1.题目要求 中位数是有序列表中间的数.如果列表长度是偶数,中位数则是中间两个数的平均值. 例如, [2,3,4] 的中位数是 3 [2,3] 的中位数是 (2 + 3) / 2 = 2.5 设计一个 ...