您的位置:首页 > 运维架构 > Nginx

Nginx和PHP-FPM的启动/重启脚本

2014-04-15 15:29 871 查看
服务器上的Nginx和PHP都是源码编译安装的,不支持类似以前的nginx(start|restart|stop|reload)了。自己动手丰衣足食。以下脚本应该在RHEL, Fedora,CentOS下都适用。

一、Nginx启动脚本/etc/init.d/nginx

#!/bin/bash

#

# Startup script for Nginx - this script starts and stops the nginxdaemon

#

# chkconfig:   - 8515

# 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" ] && exit0

 

nginx="/usr/local/nginx/sbin/nginx"

prog=$(basename $nginx)

 

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

 

[ -f /etc/sysconfig/nginx ] && ./etc/sysconfig/nginx

 

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

   sleep 1

   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/null2>&1

}

 

case "$1" in

   start)

       rh_status_q && exit 0

       $1

   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息