CentOS7创建nginx服务并配置开机自启

Posted XiaoHH Superme

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7创建nginx服务并配置开机自启相关的知识,希望对你有一定的参考价值。

注意事项

  • 本次沿着上次发布的Centos7上nginx安装步骤继续讲解,没有按照我的步骤安装的童鞋需要注意更改脚本内容
  • 观看本教程之前请先安装nginx

操作步骤

准备工作

  • 确定自己的nginx安装目录,如果是按照我写的nginx安装步骤可直接复制以下脚本,否则根据注释自行更改

开始撸码

在目录 /usr/lib/systemd/system/ 下创建一个文件名字为:nginx.service,使用命令:

vim /usr/lib/systemd/system/nginx.service

其中文件内容:

[Unit]
Description=nginx - web server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/opt/server/nginx/conf/nginx.pid
ExecStartPre=/opt/server/nginx/sbin/nginx -t -c /opt/server/nginx/conf/nginx.conf
ExecStart=/opt/server/nginx/sbin/nginx -c /opt/server/nginx/conf/nginx.conf
ExecReload=/opt/server/nginx/sbin/nginx -s reload
ExecStop=/opt/server/nginx/sbin/nginx -s stop
ExecQuit=/opt/server/nginx/sbin/nginx -s quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target

文件内容详解(主要是Service当中的内容)

这行代码制定了程序的 pid文件 在哪,因为我默认有设置,所以这个路径如果和我不一样要该

PIDFile=/opt/server/nginx/conf/nginx.pid

然后讲解我的其它路径(以下配置说明中就不再讲述这个路径,如果我在文件中写了这两个路径,请自行更改为自己的文件路径):

# 这是我的nginx运行文件的路径
/opt/server/nginx/sbin/nginx
# 这是配置文件的路径
/opt/server/nginx/conf/nginx.conf

启动前的准备工作(检查配置文件有没有错误):

ExecStartPre=/opt/server/nginx/sbin/nginx -t -c /opt/server/nginx/conf/nginx.conf

启动时运行的脚本:

ExecStart=/opt/server/nginx/sbin/nginx -c /opt/server/nginx/conf/nginx.conf

从新加载时的脚本(从新加载配置文件):

ExecReload=/opt/server/nginx/sbin/nginx -s reload

停止nginx服务器的脚本:

ExecStop=/opt/server/nginx/sbin/nginx -s stop

退出nginx的脚本:

ExecQuit=/opt/server/nginx/sbin/nginx -s quit

文件内容演示:

保存后退出,执行以下命令:

# 从新加载 linux 服务
systemctl daemon-reload
# 使开机自启
systemctl enable nginx
# 手动开启nginx服务器
systemctl start nginx
# 关闭nginx服务器
systemctl stop nginx

使用第三条命令之后可以访问查看结果:

使用第二条命令之后可以开机尝试,发现可以重启成功

下课

以上是关于CentOS7创建nginx服务并配置开机自启的主要内容,如果未能解决你的问题,请参考以下文章

centos6 centos7 配置开机启动服务

RHCSA-A14. 安装并创建容器,设置开机自启

RHCSA-A14. 安装并创建容器,设置开机自启

Ubuntu 16.04开机自启Nginx简单脚本

nginx设置开机自启

centos7中设置服务开机自启的两种方法