lnmp重启php.fpm,LNMP一键重启服务(Nginx,PHP-fpm,Mysql)

LNMP框架一键启动:对于unix系统手动安装(非一键安装)LNMP框架来说,一键启动是非常有必要的。

服务命令有:"Usage: lnmp {start|stop|reload|restart|kill|status|allrestart}"

启动服务分为:

1、启动nginx;

2、启动mysql

3、启动php-fpm

4、启动其它的服务。

直接上代码:请把文件放于/usr/bin目录下运行

#!/bin/bash

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin

export PATH

# Check if user is root

if [ $(id -u) != "0" ]; then

echo "Error: You must be root to run this script!"

exit 1

fi

PHPFPMPIDFILE=/usr/local/php/var/run/php-fpm.pid

arg1=$1

arg2=$2

lnmp_start()

{

echo "Starting LNMP..."

/etc/init.d/nginx start

/etc/init.d/mysqld start

echo "Starting php-fpm..."

/usr/local/php/sbin/php-fpm -c /etc/php.ini -y /usr/local/php/etc/php-fpm.conf

echo "done."

}

lnmp_stop()

{

echo "Stoping LNMP..."

/etc/init.d/nginx stop

/etc/init.d/mysqld stop

echo "killall php-fpm"

killall php-fpm

echo "done."

}

lnmp_reload()

{

echo "Reload LNMP..."

/etc/init.d/nginx reload

/etc/init.d/mysql reload

echo "done."

}

lnmp_kill()

{

echo "Kill nginx,php-fpm,mysql process..."

killall nginx

killall mysqld

killall php-fpm

killall php-cgi

echo "done."

}

lnmp_status()

{

/etc/init.d/nginx status

#下面两种方式查看是否启动php-fpm服务

#if [ -f $PHPFPMPIDFILE ]; then

# echo "php-fpm is runing!"

#else

# echo "php-fpm is stop!"

#fi

if netstat -tnpl | grep php-fpm;then

echo "php-fpm is runing!"

else

echo "php-fpm is stop!"

fi

/etc/init.d/mysqld status

}

case "${arg1}" in

start)

lnmp_start

;;

stop)

lnmp_stop

;;

restart)

lnmp_stop

lnmp_start

;;

allrestart)

lnmp_stop

lnmp_start

echo "start svnserve"

service svnserve start

echo "start sendmail"

/etc/init.d/sendmail start

;;

reload)

lnmp_reload

;;

kill)

lnmp_kill

;;

status)

lnmp_status

;;

*)

echo "Usage: lnmp {start|stop|reload|restart|kill|status|allrestart}"

;;

esac

exit

输入 lnmp restart

4471448e5f3cd22f8ea6e76164148c61.png

输入lnmp status:

9b0d484d1f96911d5c593f04c0f74937.png

另外,顺便附上启动nginx的文件,该文件放于目录“/etc/rc.d/init.d”下,参数请根据自己的目录调整

#! /bin/sh

# chkconfig: 2345 55 25

# Description: Startup script for nginx webserver on Debian. Place in /etc/init.d and

# run 'update-rc.d -f nginx defaults', or use the appropriate command on your

# distro. For CentOS/Redhat run: 'chkconfig --add nginx'

### BEGIN INIT INFO

# Provides: nginx

# Required-Start: $all

# Required-Stop: $all

# Default-Start: 2 3 4 5

# Default-Stop: 0 1 6

# Short-Description: starts the nginx web server

# Description: starts nginx using start-stop-daemon

### END INIT INFO

# Author: licess

# website: https://lnmp.org

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

NAME=nginx

NGINX_BIN=/usr/local/nginx-1.8.0/sbin/$NAME

CONFIGFILE=/usr/local/nginx-1.8.0/conf/$NAME.conf

PIDFILE=/usr/local/nginx-1.8.0/logs/$NAME.pid

if [ -s /bin/ss ]; then

StatBin=/bin/ss

else

StatBin=/bin/netstat

fi

case "$1" in

start)

echo -n "Starting $NAME... "

if $StatBin -tnpl | grep -q nginx;then

echo "$NAME (pid `pidof $NAME`) already running."

exit 1

fi

$NGINX_BIN -c $CONFIGFILE

if [ "$?" != 0 ] ; then

echo " failed"

exit 1

else

echo " done"

fi

;;

stop)

echo -n "Stoping $NAME... "

if ! $StatBin -tnpl | grep -q nginx; then

echo "$NAME is not running."

exit 1

fi

$NGINX_BIN -s stop

if [ "$?" != 0 ] ; then

echo " failed. Use force-quit"

$0 force-quit

else

echo " done"

fi

;;

status)

if $StatBin -tnpl | grep -q nginx; then

PID=`pidof nginx`

echo "$NAME (pid $PID) is running..."

else

echo "$NAME is stopped."

exit 0

fi

;;

force-quit|kill)

echo -n "Terminating $NAME... "

if ! $StatBin -tnpl | grep -q nginx; then

echo "$NAME is is stopped."

exit 1

fi

kill `pidof $NAME`

if [ "$?" != 0 ] ; then

echo " failed"

exit 1

else

echo " done"

fi

;;

restart)

$0 stop

sleep 1

$0 start

;;

reload)

echo -n "Reload service $NAME... "

if $StatBin -tnpl | grep -q nginx; then

$NGINX_BIN -s reload

echo " done"

else

echo "$NAME is not running, can't reload."

exit 1

fi

;;

configtest)

echo -n "Test $NAME configure files... "

$NGINX_BIN -t

;;

*)

echo "Usage: $0 {start|stop|restart|reload|status|configtest|force-quit|kill}"

exit 1

;;

esac

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值