插件窝 干货文章 CentOS7怎么将Nginx添加系统服务

CentOS7怎么将Nginx添加系统服务

Nginx systemctl 服务 sudo 271    来源:    2025-04-26

在CentOS 7中将Nginx添加为系统服务

在CentOS 7中,您可以通过创建systemd服务单元文件来将Nginx添加为系统服务。以下是详细步骤:

方法一:手动创建systemd服务文件

  1. 创建服务文件:

    sudo vi /usr/lib/systemd/system/nginx.service
    
  2. 将以下内容粘贴到文件中(根据您的Nginx安装路径可能需要调整):

    [Unit]
    Description=The nginx HTTP and reverse proxy server
    After=network.target remote-fs.target nss-lookup.target
    
    [Service]
    Type=forking
    PIDFile=/run/nginx.pid
    ExecStartPre=/usr/sbin/nginx -t
    ExecStart=/usr/sbin/nginx
    ExecReload=/bin/kill -s HUP $MAINPID
    ExecStop=/bin/kill -s QUIT $MAINPID
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target
    
  3. 重新加载systemd配置:

    sudo systemctl daemon-reload
    
  4. 现在您可以使用systemctl管理Nginx:

    sudo systemctl start nginx       # 启动
    sudo systemctl stop nginx        # 停止
    sudo systemctl restart nginx     # 重启
    sudo systemctl reload nginx      # 重载配置
    sudo systemctl status nginx      # 查看状态
    sudo systemctl enable nginx      # 设置开机启动
    

方法二:使用Nginx官方安装包

如果您通过Nginx官方仓库安装Nginx,服务文件通常会自动创建:

  1. 添加Nginx官方仓库:

    sudo vi /etc/yum.repos.d/nginx.repo
    

    添加以下内容:

    [nginx]
    name=nginx repo
    baseurl=http://nginx.org/packages/centos/7/$basearch/
    gpgcheck=0
    enabled=1
    
  2. 安装Nginx:

    sudo yum install nginx
    

    安装完成后,服务文件会自动创建在/usr/lib/systemd/system/nginx.service

  3. 管理服务(与方法一相同)

验证服务

检查服务是否正常运行:

sudo systemctl status nginx

检查Nginx是否监听端口:

netstat -tulnp | grep nginx

注意事项

  1. 如果Nginx安装路径不同,请相应调整服务文件中的路径
  2. 确保防火墙允许HTTP(80)和HTTPS(443)端口
  3. 如果使用SELinux,可能需要调整相关策略

通过以上步骤,您已成功将Nginx添加为CentOS 7的系统服务,可以使用systemctl命令方便地管理Nginx服务。