当前位置: 首页 > news >正文

CentOS 7 设置 Nginx 开机自启(使用 Systemd)

CentOS 7 设置 Nginx 开机自启(使用 Systemd)

概述

本文档将指导您如何在 CentOS 7 上使用 Systemd 设置 Nginx 开机自启。Systemd 是 Linux 的系统和服务管理器,负责在系统启动时初始化系统环境、启动和管理系统进程。

步骤

1. 创建或编辑 nginx.service 文件

  • 检查文件是否存在
    首先检查 /etc/systemd/system/ 目录下是否存在 nginx.service 文件。

    ls /etc/systemd/system/ | grep nginx.service
    
  • 创建或编辑文件
    如果文件不存在,使用以下命令创建并编辑:

    sudo vim /etc/systemd/system/nginx.service
    

    如果文件已存在,则直接编辑该文件。

2. 添加服务配置

nginx.service 文件中添加以下内容(根据实际情况调整路径):

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network-online.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

说明

  • PIDFile:指定 Nginx 的 PID 文件路径。
  • ExecStartPre:在启动 Nginx 之前执行的命令,用于测试 Nginx 配置文件的语法。
  • ExecStart:启动 Nginx 的命令。
  • ExecReload:重新加载 Nginx 配置的命令。
  • ExecStop:停止 Nginx 的命令。

3. 重新加载 systemd

编辑完成后,重新加载 systemd 以扫描新的或有变动的单元:

sudo systemctl daemon-reload

4. 设置开机自启

启用 Nginx 服务,使其在系统启动时自动启动:

sudo systemctl enable nginx.service

5. 启动 Nginx 服务

立即启动 Nginx 服务:

sudo systemctl start nginx.service

6. 验证服务状态

检查 Nginx 服务的状态,确保它正在运行:

sudo systemctl status nginx.service

如果服务正常运行,您将看到类似以下的输出:

● nginx.service - The NGINX HTTP and reverse proxy server
   Loaded: loaded (/etc/systemd/system/nginx.service; enabled; vendor preset: disabled)
   Active: active (running) since ...

注意事项

  • 路径正确性:确保 nginx.service 文件中的路径与 Nginx 的实际安装路径一致。
  • 权限问题:确保 nginx.service 文件和 Nginx 可执行文件具有正确的权限。
  • 配置文件语法:在对 Nginx 配置文件进行任何修改后,建议先测试其语法是否正确:
    nginx -t
    
  • 系统兼容性:使用 Systemd 方法是管理现代 Linux 发行版(如 CentOS 7)服务的推荐方式。

相关文章:

  • 【Hbase】列族版本问题
  • sqli-labs学习记录6
  • 使用 Fetch API 实现流式读取
  • 单片机学习笔记——入门51单片机
  • 在windows下通过wsl工具管理Linux子系统
  • UDS诊断、ECU刷写、自动化测试、车联网测试、DTC故障注入测试、坏境测试、可靠性测试、压力测试、性能测试等
  • 计算机四级 - 数据库原理(操作系统部分)- 第5章「内存管理」
  • QT Quick(C++)跨平台应用程序项目实战教程 3 — 项目基本设置(窗体尺寸、中文标题、窗体图标、可执行程序图标)
  • C++:类和对象(含各编译器对编译过程的优化解释)详解[后篇]
  • Neo Gamma 机器人在 GTC 2025 上的突破性进展与表现分析
  • JVM运行时数据区内部结构难记?一个例子优化记忆
  • 避坑指南 | 阿里云服务器centos7上MySQL部署优化指南
  • C++之模板进阶
  • 亮相AWE2025,MOVA以科技重塑生活,以美学沟通世界
  • 标贝科技入选2025年市级数据要素市场化配置改革“揭榜挂帅”名单
  • 2025蓝桥杯备赛Day1——B2109 统计数字字符个数
  • 微信小游戏:跳一跳,自动化操作
  • 4.6--入门知识扫盲,路径追踪与路由误导:Tracert攻击 vs ICMP重定向攻击(包你看一遍全记住)
  • squirrel语言全面介绍
  • JAVA学习--java数组--打印稀疏数组和稀疏数组的还原
  • 《审判》|“被告”的魅力:K在等什么?
  • 来伊份深夜回应“粽子中吃出疑似创可贴”:拿到实物后会查明原因
  • 德国将不再公布对乌克兰军事支持的细节
  • 匈牙利外长称匈方已驱逐两名乌克兰外交官
  • 深圳两家会所涉卖淫嫖娼各被罚7万元逾期未缴,警方发催告书
  • 晋级中部非省会第一城,宜昌凭什么