• NGINX、PHP-FPM开机自动启动


    1、NGINX SHELL脚本   放到/etc/init.d/下取名nginx

    #!/bin/sh 
    # 
    # nginx - this script starts and stops the nginx daemon 
    # 
    # chkconfig: - 85 15 
    # description: Nginx is an HTTP(S) server, HTTP(S) reverse 
    # proxy and IMAP/POP3 proxy server 
    # processname: nginx 
    # chkconfig: 2345 90 91    
    # description: nginx web server
    # processname: nginx
    # config: /opt/nginx/conf/nginx.conf
    # pidfile: /opt/nginx/nginx.pid
    
    # Source function library.
    . /etc/init.d/functions
    
    # Source networking configuration.
    . /etc/sysconfig/network
    
    
    if [ -f /etc/sysconfig/nginx ];then
    . /etc/sysconfig/nginx
    fi
    
    # 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"
    
    [ -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 
    killall -9 nginx 
    }
    
    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/null 2>&1 
    }
    
    case "$1" in 
    start) 
        rh_status_q && exit 0 
        $1 
        ;; 
    stop) 
    rh_status_q || exit 0 
        $1 
        ;; 
    restart) 
        $1 
        ;; 
    test) 
        configtest 
        ;; 
    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|test}" 
    exit 2 
    esac

    2、PHP-FPM SHELL脚本  放到/etc/init.d/下 取名php-fpm

    #!/bin/bash
    # php-fpm startup script for the php-fpm 
    # php-fpm version:5.5.0-alpha6
    # chkconfig: - 85 15
    # description: php-fpm is very good
    # processname: php-fpm
    # pidfile: /var/run/php-fpm.pid
    # config: /usr/local/php/etc/php-fpm.conf
      
    php_command=/usr/local/php/sbin/php-fom
    php_config=/usr/local/php/etc/php-fpm.conf
    php_pid=/usr/local/php/var/run/php-fpm.pid
    RETVAL=0
    prog="php-fpm"
      
    #start function
    php_fpm_start() {
        /usr/local/php/sbin/php-fpm
    }
      
    start(){
        if [ -e $php_pid  ]
        then
        echo "php-fpm already start..."
        exit 1
        fi
        php_fpm_start
    }
      
    stop(){
        if [ -e $php_pid ]
        then
        parent_pid=`cat $php_pid`
        all_pid=`ps -ef | grep php-fpm | awk '{if('$parent_pid' == $3){print $2}}'`
        for pid in $all_pid
        do
                kill $pid
            done
            kill $parent_pid
        fi
        exit 1
    }
      
    restart(){
        stop
        start
    }
      
    # See how we were called.
    case "$1" in
    start)
            start
            ;;
    stop)
            stop
            ;;
    restart)
            stop
            start
            ;;
    status)
            status $prog
            RETVAL=$?
            ;;
    *)
            echo $"Usage: $prog {start|stop|restart|status}"
            exit 1
    esac
    exit $RETVAL

    最后将两个脚本添加到系统服务中

    ## 添加执行权限
    chmod a+x /etc/init.d/nginx
    chmod a+x /etc/init.d/php-fpm

    ## 加入服务
    chkconfig --add nginx
    chkconfig --add php-fpm

    ## 开机自启
    chkconfig nginx on
    chkconfig php-fpm on

  • 相关阅读:
    Java
    Java
    Java
    Java
    NYOJ 127 星际之门(一)
    BNUOJ 1013 YC大牛的判题任务
    BNUOJ 1011 人工智能?
    HDU 1035 Robot Motion
    HDU 1214 圆桌会议
    NYOJ 86 找球号(一)
  • 原文地址:https://www.cnblogs.com/wntd/p/7650331.html
Copyright © 2020-2023  润新知