linux怎么设置开机自启动nginx

在Linux系统上,可以通过以下步骤设置开机自启动Nginx。
1. 打开Nginx的主配置文件。在大多数Linux发行版中,Nginx的主配置文件位于/etc/nginx/nginx.conf路径下。使用文本编辑器(例如vi或nano)打开该文件。
2. 查找并编辑以下行:

  user www-data;



  worker_processes auto;

将user行更改为具有适当权限的用户(例如root),以便在启动时Nginx可以以管理员权限运行。保存并关闭文件。

3. 检查系统的Init系统。目前,有两种主要的Init系统:SysV和Systemd。执行以下命令确定所在系统使用的Init系统:

  ps --no-headers -o comm 1

如果输出为init,则系统使用SysV Init系统;如果输出为systemd,则系统使用Systemd Init系统。
4. 针对不同的Init系统,执行以下操作:
a. 对于SysV Init系统:
创建一个启动脚本文件/etc/init.d/nginx,并使用文本编辑器打开该文件。
将以下内容复制到文件中:

       #! /bin/sh



        ### 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



        



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



        DAEMON=/usr/sbin/nginx



        NAME=nginx



        DESC=nginx



        



        test -x $DAEMON || exit 0



        



        set -e



        



        . /lib/init/vars.sh



        . /lib/lsb/init-functions



        



        case "$1" in



          start)



              echo -n "Starting $DESC: "



              start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \



                  --exec $DAEMON -- $DAEMON_OPTS || true



              echo "$NAME."



              ;;



          stop)



              echo -n "Stopping $DESC: "



              start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \



                  --exec $DAEMON || true



              echo "$NAME."



              ;;



          restart|force-reload)



              echo -n "Restarting $DESC: "



              start-stop-daemon --stop --quiet --pidfile \



                  /var/run/$NAME.pid --exec $DAEMON || true



              sleep 1



              start-stop-daemon --start --quiet --pidfile \



                  /var/run/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS || true



              echo "$NAME."



              ;;



          reload)



              echo -n "Reloading $DESC configuration: "



              start-stop-daemon --stop --signal HUP --quiet --pidfile \



                  /var/run/$NAME.pid --exec $DAEMON || true



              echo "$NAME."



              ;;



          *)



              N=/etc/init.d/$NAME



              echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2



              exit 1



              ;;



        esac



        



        exit 0

保存并关闭文件。
将脚本文件设置为可执行权限:

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

添加Nginx到系统启动项:

       sudo update-rc.d nginx defaults

b. 对于Systemd Init系统:
创建一个Nginx服务文件`/etc/systemd/system/nginx.service`,并使用文本编辑器打开该文件。
将以下内容复制到文件中:

       [Unit]



        Description=Nginx



        After=network.target



        



        [Service]



        ExecStart=/usr/sbin/nginx



        ExecReload=/usr/sbin/nginx -s reload



        ExecStop=/usr/sbin/nginx -s stop



        PrivateTmp=true



        



        [Install]



        WantedBy=multi-user.target

保存并关闭文件。
重新加载systemd配置文件:

       sudo systemctl daemon-reload

添加Nginx到系统启

阅读剩余
THE END