Nginx在Linux系统下设置开机自启
简介
平时我们使用服务器时会遇到服务不可用的情况,大概率是遇到了死锁导致服务器无法及时响应我们的请求,这时候需要重启解决服务不可用的问题,而且还要排查原因防止再次发生,不过一般情况下个人使用可以省略此步骤(好吧,是不会排查),但重启后需要手动启动应用恢复服务,所以我们需要设置一些脚本让服务器开机自启应用,今天设置如何重启nginx
修改配置文件
Linux系统启动后,会调用/etc/rc.d/rc.local执行用户脚本,所以我们可以在此设置nginx的启动,编辑/etc/rc.d/rc.local:
1 | !/bin/bash |
执行命令chmod +x /etc/rc.d/rc.local以确保启动时能够正常执行
另附linux启动流程:

加入systemd服务
systemd是所有进程之母,负责将 Linux 主机启动到可以做生产性任务的状态。
另一种方法是将nginx加入到systemd服务
cd /lib/systemd/system/,新建nginx.service,添加以下内容:
1 | [Unit] |
服务运行参数说明
| 参数 | 解释 |
|---|---|
| [Unit] | 服务的说明 |
| Description | 描述服务 |
| After | 描述服务类别 |
| [Service] | 服务运行参数的设置 |
| Type | forking是后台运行的形式 |
| ExecStart | 服务的具体运行命令 |
| ExecReload | 重启命令 |
| ExecStop | 停止命令 |
| PrivateTmp | True表示给服务分配独立的临时空间 |
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
加入开机自启动
1 | systemctl enable nginx |
取消开机自启动
1 | systemctl disable nginx |
服务的启动/停止/刷新配置文件/查看状态
1 | systemctl start nginx.service 启动nginx服务 |
拓展
根据上述方法,可以制作其他应用的自启动方案,只需提供应用的绝对路径即可
参考文章
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 枫叶!
评论







