Home >Operation and Maintenance >Nginx >How to set nginx to start automatically at boot under linux

How to set nginx to start automatically at boot under linux

王林
王林forward
2020-11-23 16:29:344097browse

How to set nginx to start automatically at boot under linux

背景介绍:

安装完nginx之后,因为nginx作为一个代理服务器,一般是后台运行的。而且,我们也不希望在服务器在启动之后,还要手动输入命令来启动nginx。

所以,我们需要进行一些配置,使nginx服务器可以开机自动启动。

(相关推荐:nginx教程

编写shell脚本

vi /etc/init.d/nginx

输入下面的文本

#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
# it is v.0.0.2 version.
# chkconfig: - 85 15
# description: Nginx is a high-performance web and proxy server.
#              It has a lot of features, but it's not for everyone.
# processname: nginx
# pidfile: /var/run/nginx.pid
# config: /usr/local/nginx/conf/nginx.conf
nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
nginx_pid=/var/run/nginx.pid
RETVAL=0
prog="nginx"
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
[ -x $nginxd ] || exit 0
# Start nginx daemons functions.
start() {
if [ -e $nginx_pid ];then
   echo "nginx already running...."
   exit 1
fi
   echo -n $"Starting $prog: "
   daemon $nginxd -c ${nginx_config}
   RETVAL=$?
   echo
   [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
   return $RETVAL
}
# Stop nginx daemons functions.
stop() {
        echo -n $"Stopping $prog: "
        killproc $nginxd
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid
}
# reload nginx service functions.
reload() {
    echo -n $"Reloading $prog: "
    #kill -HUP `cat ${nginx_pid}`
    killproc $nginxd -HUP
    RETVAL=$?
    echo
}
# See how we were called.
case "$1" in
start)
        start
        ;;
stop)
        stop
        ;;
reload)
        reload
        ;;
restart)
        stop
        start
        ;;
status)
        status $prog
        RETVAL=$?
        ;;
*)
        echo $"Usage: $prog {start|stop|restart|reload|status|help}"
        exit 1
esac
exit $RETVAL

然后, 按ESC,输入 “:wq” 进行保存退出。

设置文件的访问权限

chmod a+x /etc/init.d/nginx

加入到rc.local文件中

vi /etc/rc.local

在后面添加一行代码

/etc/init.d/nginx start

然后, 按ESC,输入 “:wq” 进行保存退出。

至此,nginx开机自启已经设置完毕,可以重启一下服务器进行测试了。

The above is the detailed content of How to set nginx to start automatically at boot under linux. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:csdn.net. If there is any infringement, please contact admin@php.cn delete