Nginx启动脚本

#!/bin/bash
# chkconfig: - 30 21
# description: http service.
# Source Function Library
. /etc/init.d/functions
# Nginx Settings

NGINX_SBIN="/usr/local/nginx/sbin/nginx"
NGINX_CONF="/usr/local/nginx/conf/nginx.conf"
NGINX_PID="/usr/local/nginx/logs/nginx.pid"
RETVAL=0
prog="Nginx"

start() {
        echo -n $"Starting $prog: "
        mkdir -p /dev/shm/nginx_temp
        daemon $NGINX_SBIN -c $NGINX_CONF
        RETVAL=$?
        echo
        return $RETVAL
}

stop() {
        echo -n $"Stopping $prog: "
        killproc -p $NGINX_PID $NGINX_SBIN -TERM
        rm -rf /dev/shm/nginx_temp
        RETVAL=$?
        echo
        return $RETVAL
}

reload(){
        echo -n $"Reloading $prog: "
        killproc -p $NGINX_PID $NGINX_SBIN -HUP
        RETVAL=$?
        echo
        return $RETVAL
}

restart(){
        stop
        start
}

configtest(){
    $NGINX_SBIN -c $NGINX_CONF -t
    return 0
}

case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  reload)
        reload
        ;;
  restart)
        restart
        ;;
  configtest)
        configtest
        ;;
  *)
        echo $"Usage: $0 {start|stop|reload|restart|configtest}"
        RETVAL=1
esac

exit $RETVAL

注:这个脚本不是我自己写的,来源于互联网!

时间: 2024-08-26 17:17:55

Nginx启动脚本的相关文章

Nginx启动脚本大家来找茬

今天讲到shell编程,我给大家讲解手工开发Nginx启动脚本时,写的脚本,调试发现有问题, 挺有意思的一个问题点,有2个地方有影响启动和停止的问题,有兴趣的可以研究下, 一周后公布结果! [[email protected] 03]# cat nginxd-good  #!/bin/sh RETVAL=0 path="/application/nginx" . /etc/init.d/functions start(){ if [ ! -f "$path/logs/ngin

简单的nginx启动脚本

初学时写的一个简单nginx启动脚本,使用定义函数和传参的方法.(生产环境中是不能用pkill来杀服务的,要使用-s reload来平滑重启) [[email protected]]# cat start_nginx04.sh #!/bin/sh ./etc/init.d/functions start_nginx=/nginx/sbin/nginx USAGE(){ echo "USAGE $0{start|stop|restart}" exit 1 } if [ $# -ne 1

nginx启动脚本编写及设置开机自启动

环境:Centos 6.8 如果机器是Centos 7的,此脚本和设置开机自启动方法不适用. 首先确保nginx配置文件中:有pid目录 pid        logs/nginx.pid; 1.1 编写nginx启动脚本 [[email protected] ~]# cd /server/scripts [[email protected] scripts]# vim nginx.sh  #!/bin/bash [ -f /etc/init.d/functions ] && . /etc

LNMP搭建4:Nginx启动脚本和配置文件

Nginx没有像apachetl那样的启动脚本,我们需要手动做一个 [[email protected] html]# vim /etc/init.d/nginx 内容如下:http://www.apelearn.com/study_v2/chapter18.html #!/bin/bash # chkconfig: - 30 21 # description: http service. # Source Function Library . /etc/init.d/functions # N

centos 7 nginx启动脚本

centos7使用systemd代替之前的systemv的启动脚本,可以说更简单.不再需要编写一长段脚本. 复制以下内容到/usr/lib/systemd/system/nginx.service [Unit] Description=nginx - high performance web server Documentation=http://nginx.org/en/docs/ After=network.target remote-fs.target nss-lookup.target

解决Nginx启动脚本在redhat上不兼容问题

我们在网上看到的Nginx的启动脚本通常是/etc/rc.d/init.d/nginx这个脚本,其内容是: #!/bin/bash # nginx Startup script for the Nginx HTTP Server # it is v.1.3.0 version. # chkconfig: - 85 15 # description: Nginx is a high-performance web and proxy server. #              It has a 

LNMP之 nginx 启动脚本和配置文件

因为 nginx 启动不方便,所以我们需要自已手动来编译一个nginx 的启动脚本 [[email protected] ~]# vim /etc/init.d/nginx  #加入以下内容 #!/bin/bash# chkconfig: - 30 21# description: http service.# Source Function Library. /etc/init.d/functions# Nginx Settings NGINX_SBIN="/usr/local/nginx/s

LNMP的Nginx启动脚本和配置文件

配置LNMP完成安装,并把PHP也解析完成,但是Nginx启动使用的是一个可执行文件:/usr/local/nginx/sbin/nginx 来启动,非常不方便,要给Nginx写一个启动脚本,同Apache,虽然Apache的启动脚本没有放到/etc/init.d目录下,但Apache有个非常方便的启动.重启.停止脚本,即:"apachectl",而Nginx没有这样的工具, 我们需要手动制作一个启动脚本,如下: [[email protected] ~]# vim /etc/init

nginx启动脚本编写

思路: 1.判断nginx进程是否存在ps -ef|grep nginx |egrep -v "grep|nginxd.sh" 2.case 启动|关闭|重启|重新加载 缺陷:nginx分两个不同的进程,分别是master管理进程和运行进程,如果某个进程出现问题的话这个脚本就无效,需要对pid进行流程控制.此脚本没有涉及kill nginx的ID [[email protected] ~]# cat nginxd.sh #!/bin/bash ## #nginx服务启动脚本 . /et

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

思路: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 PA