如何配置Nginx为系统服务

  1. 在/usr/lib/systemd/system目录下添加nginx.service,内容如下:
[Unit]
Description=nginx web service
Documentation=http://nginx.org/en/docs/
After=network.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
RestartSec=5s
PrivateTmp=true

[Install]
WantedBy=default.target

解释各个配置项的含义:

[Unit] 部分是对服务单元的描述。

  • Description:描述服务的简短说明。
  • After:指定服务单元依赖的其他单元,在本例中表示 Nginx 服务应该在网络服务启动后启动。

[Service] 部分是指定服务的具体执行细节。

  • Type:指定服务的启动类型,这里是 forking,表示启动服务时会派生出一个子进程。
  • ExecStart:指定启动 Nginx 服务的命令;路径应为自己Nginx的安装路径。
  • ExecReload:指定重新加载 Nginx 配置的命令;路径应为自己Nginx的安装路径。
  • ExecStop:指定停止 Nginx 服务的命令;路径应为自己Nginx的安装路径。
  • KillMode:指定终止模式,这里是 process,表示通过向进程发送信号终止服务。
  • Restart:指定在失败时是否重新启动服务,这里是 on-failure,表示只有在服务失败时才重新启动。
  • RestartSec:指定重新启动服务的时间间隔,这里是 5 秒。

[Install] 部分是指定服务的安装信息。

  • WantedBy:指定服务的启动级别,这里是 multi-user.target,表示服务将在多用户环境下启动。

(2)添加完成后如果权限有问题需要进行权限设置

chmod 755 /usr/lib/systemd/system/nginx.service`<details>

(3)使用系统命令来操作Nginx服务

启动: systemctl start nginx
停止: systemctl stop nginx
重启: systemctl restart nginx
重新加载配置文件: systemctl reload nginx
查看nginx状态: systemctl status nginx
开机启动: systemctl enable nginx
posted @ 2024-08-23 14:49  panbin_2006  阅读(64)  评论(0)    收藏  举报