文档章节

自己写了个nginx启动脚本,shell

小刘师傅
 小刘师傅
发布于 2015/08/05 14:47
字数 278
阅读 733
收藏 9

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


#!/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


© 著作权归作者所有

小刘师傅
粉丝 0
博文 10
码字总数 3052
作品 0
昌平
私信 提问
nginx负载均衡-下线(上线)某台机器脚本

公司网站的架构是通过nginx来做负载均衡的,以前上下线都是通过手动更改配置文件,然后reload nginx的方式来实现!这种方式效率不怎么高,在这里自己写了一个shell脚本,提供给大家参考一下:...

chenyicai
2013/11/25
0
0
案例十:shell编写nginx服务启动程序

使用源码包安装的Nginx没办法使用"service nginx start"或"/etc/init.d/nginx start"进行操作和控制,所以写了以下的服务控制脚本。 选项有:   start    启动   stop    停止   ...

Linux就该这么学
07/14
19
0
分析shell实现nginx反向代理后端realserver健康检查

今天阅读老男孩教育博客http://oldboy.blog.51cto.com/ 中一篇关于shell实现nginx反向代理后端realserver健康检查的文章,根据其中一个学员朋友的思路自己写了一个脚本。 一、nginx.conf部分...

lingqing114
2017/04/11
0
0
Tinywan/lua-nginx-redis

在线文档(Online documentation) 目录 Nginx 教程 (Nginx tutorial) Nginx编译安装 Nginx.conf详解和配置 Location 详解和配置 Nginx基础知识 Nginx高性能WEB服务器详解 Nginx高并发系统...

Tinywan
2018/01/07
0
0
通过Shell开发企业级专业服务启动脚本案例(MySQL)

老男孩教育Linux高端运维班Shell课后必会考试题: 企业Shell面试题10:开发企业级MySQL启动脚本 说明: MySQL启动命令为: /bin/sh mysqldsafe --pid-file=$mysqldpidfilepath 2>&1 >/dev/null...

老男孩oldboy
2017/07/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

debian10使用putty配置交换机console口

前言:Linux的推广普及,需要配合解决实际应用方能有成效! 最近强迫自己用linux进行实际工作,过程很痛苦,还好通过网络一一解决,感谢各位无私网友博客的帮助! 系统:debian10 桌面:xfc...

W_Lu
35分钟前
10
0
aelf Enterprise 0.8.0 beta有奖公测,“Bug奖金计划”重磅开启

2019年9月30日,aelf Enterprise 0.8.0 beta版正式发布。aelf Enterprise 0.8.0 beta是一个完备的区块链系统, 包含完备的区块链系统、开发套件、开发文档、以及配套的基础应用和基础服务。 ...

AELF开发者社区
36分钟前
8
0
oracle 初始化数据库脚本

create user lpf identified by 123456; create tablespace lpf_ts_cms datafile '/opt/app/oracle/product/11.2.0/lpf.dbf' size 200M; alter user lpf default tablespace lpf_ts_cms; sel......

internetafei
41分钟前
7
0
《区块链DAPP开发入门、代码实现、场景应用》笔记1——天外飞仙DAPP

Solidity编程语言解决了编写智能合约的不友好的问题,但是当合约编译并部署之后,对与这些接口的访问,对于一般的使用者来说,门槛有点高, 对普通用户来说也是非常不友好,为了使广大用户理...

柯南和由美
45分钟前
6
0
流程图制作软件推荐_流程图制作软件哪个好

流程图(Flow Chart)是一种表示算法思路的图示,通过特定图形、图表可以直观的说明某一过程。这种过程既可以是生产线上的工艺流程图,也可以标明某项任务必需的管理过程。为了便于识别,绘制...

工具分享
47分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部