`
275553385
  • 浏览: 721517 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
文章分类
社区版块
存档分类
最新评论

开启、停止 nginx 的shell脚本

阅读更多
#!/bin/sh
# 作者:jims
# 描述 : 开启停止  nginx 的脚本
NGINX_DIR=/usr/local/nginx  #nginx的安装路径
export NGINX_DIR #输入到环境变量中
case  $1 in
'start' )  
echo "Starting nginx..."
$NGINX_DIR/sbin/nginx
echo "Start Ok."
;;
'restart' )
echo "Restarting nginx ..."
kill -HUP `cat $NGINX_DIR/logs/nginx.pid` #平滑重启
echo "Restart Ok."
;;
'stop' )
echo "Stopping nginx..."
kill -15 `cat $NGINX_DIR/logs/nginx.pid`
echo "Stop  Ok"
;;
'testcfg' )
$NGINX_DIR/sbin/nginx -t
;;
*)
echo "参数: `basename $0` {start|restart|stop||testcfg}"
esac

可以把文件放入到/usr/bin目录下,方便对nginx的基本操作。



网络转载一个可以放入chkconfig中的。

#!/bin/sh
#
# nginx - this script starts and stops the nginx daemin
#
# chkconfig:   - 85 15 
# description:  Nginx is an HTTP(S) server, HTTP(S) reverse \
#               proxy and IMAP/POP3 proxy server
# processname: nginx
# config:      /usr/local/nginx/conf/nginx.conf
# pidfile:     /usr/local/nginx/logs/nginx.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0

nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx)

NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"

lockfile=/var/lock/subsys/nginx

start() {
    [ -x $nginx ] || exit 5
    [ -f $NGINX_CONF_FILE ] || exit 6
    echo -n $"Starting $prog: "
    daemon $nginx -c $NGINX_CONF_FILE
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
    return $retval
}

stop() {
    echo -n $"Stopping $prog: "
    killproc $prog -QUIT
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}

restart() {
    configtest || return $?
    stop
    start
}

reload() {
    configtest || return $?
    echo -n $"Reloading $prog: "
    killproc $nginx -HUP
    RETVAL=$?
    echo
}

force_reload() {
    restart
}

configtest() {
  $nginx -t -c $NGINX_CONF_FILE
}

rh_status() {
    status $prog
}

rh_status_q() {
    rh_status >/dev/null 2>&1
}

case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart|configtest)
        $1
        ;;
    reload)
        rh_status_q || exit 7
        $1
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
            ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
        exit 2
esac
分享到:
评论

相关推荐

    docker安装mysql、redis、nginx shell脚本

    docker安装mysql、redis、nginx shell脚本

    自动化部署Nginx Shell脚本

    以下是使用Shell脚本自动化部署Nginx的基本步骤: 1. **环境准备**:确保服务器上已经安装了必要的基础工具,如GCC编译器、Make工具等,这些通常包含在开发工具包中(如在Ubuntu上使用`sudo apt-get install build-...

    shell脚本编程100例

    本书《shell脚本编程100例》为读者提供了100个实战性的shell脚本编程实例,涵盖了检测网段主机状态、猜数字游戏、打印乘法口诀、使用rsync备份数据、切割Nginx日志、监控服务端口、使用mtime删除历史文件或日志文件...

    Nginx.sh shell脚本

    搭建nginx,安装包去官网下载,然后修改脚本路径,执行即可

    shell脚本实现nginx日志分割

    本解本实现了使用shell脚本实现nginx日志分割,大家如果没资源分下载,可以转至:https://mp.csdn.net/mdeditor/85233117# 去查看源代码。谢谢大家

    nginx自动化安装shell脚本

    nginx自动化安装shell脚本

    shell脚本(监控日志发告警邮件)

    监控生产环境nginx日志发告警邮件,需要使用linux系统的定时任务,如5分钟执行或者其他时间间隔

    109个shell脚本合集.pdf

    Shell脚本合集 Shell脚本是一种脚本语言,利用Shell的命令解释的功能,对一个纯文本的文件进行解析,然后执行这些功能。 Shell脚本可以直接使用在Windows、Unix、Linux上面,并且可以调用大量系统内部的功能来解释...

    nginx安装shell脚本

    nginx安装shell脚本

    自动reload nginx解决nginx对动态域名不重新解析的Shell脚本

    为了解决这个问题,我们可以编写一个Shell脚本来定期检查IP变化并自动执行`nginx -s reload`命令来强制Nginx重新加载配置。 ### Shell脚本工作原理 1. **检测IP变化**:首先,脚本会定期读取动态DNS服务提供的API...

    250个shell脚本

    Shell脚本是Linux/Unix操作系统中的强大工具,它允许用户编写一系列命令,形成自动化任务,以提高工作效率。本文档收集了250个实用的Shell脚本实例,涵盖了多个应用场景,包括系统管理、安全防护、数据库备份等核心...

    nginx实现请求的负载均衡 + keepalived实现nginx的高可用的shell脚本

    在提供的Shell脚本中,可能包含了安装、配置Nginx和Keepalived,以及监控Nginx状态的相关命令。运行这个脚本可以在Linux环境下快速部署这样一个高可用的负载均衡集群。 总结起来,Nginx和Keepalived的组合为Web服务...

    使用shell脚本一键自动生产nginx https证书

    原文链接:https://blog.csdn.net/m0_37814112/article/details/119391879?spm=1001.2014.3001.5501 说明:一键生产nginx https自签证书脚本,真实有效!

    Shell脚本编程100例

    Shell脚本编程是Linux系统管理中的重要技能,它允许用户自动化执行一系列命令,大大提高工作效率。以下是一些关于Shell脚本编程的关键知识点: 1. **Hello World脚本**:这是所有编程语言的基础,用于验证环境设置...

    将nginx用service管理的shell脚本

    将其复制到/etc/init.d下。 就可以通过service nginx start | restart | stop 管理nginx了

    Nginx日志自动归档备份shell脚本log.sh

    Nginx日志自动归档备份shell脚本log

    nginx 启动脚本

    在Linux环境中,Nginx的启动脚本通常采用Shell脚本编写,包含了一些关键的控制命令,例如: 1. **启动**:使用`nginx`命令启动Nginx服务。 2. **停止**:发送`QUIT`信号给Nginx进程,使其优雅地关闭所有连接并退出...

    nginx 最常使用的日志分析shell脚本

    下面分享一下我用Shell编写的分析Nginx日志的脚本,它可以快速得出排名最前的网 站和IP等,内容如下所示: Most of the ip: ------------------------------------------- 220 59.41.24.48 178 59.41.24.80 172 ...

    100个shell脚本合集

    在shell脚本中,可以通过监控Nginx日志来识别异常IP,例如当某个IP在短时间内访问次数超过设定阈值(如10次),则将其加入iptables防火墙的黑名单,阻止其继续访问。同时,脚本会记录被屏蔽的IP到 `/tmp/drop_ip.log...

Global site tag (gtag.js) - Google Analytics