LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

CentOS 下 Nginx 核心文件、目录与命令详解

admin
2025年6月28日 23:38 本文热度 38

CentOS 下 Nginx 核心文件、目录与命令详解

Nginx 是一款高性能的 Web 服务器和反向代理工具,广泛应用于生产环境。本文将以 CentOS 7/8 为例,详细介绍 Nginx 的关键文件、目录结构及常用命令,帮助用户快速掌握其配置与管理。


目录结构

在这里插入图片描述

1. 安装目录与配置文件

  • 安装路径
    Nginx 默认通过 yum 安装到以下路径:

    /usr/sbin/nginx          # Nginx 可执行文件
    /etc/nginx/              # 主配置目录
    /usr/share/nginx/html/   # 默认网站根目录(存放静态文件)
  • 核心配置文件

    • /etc/nginx/nginx.conf
      Nginx 主配置文件,定义全局参数(如工作进程数、日志路径等)。 文件是 NGINX 守护进程使用的默认配置入口点。此配置文 件能够为 worker 进程、调优、日志记录、动态模块的加载以及对其他 NGINX 配 置文件的引用设置全局设置。在默认配置中,/etc/nginx/nginx.conf 文件包括顶层 http 代码块,也就是上下文,它提供了下述目录中的所有配置文件。

    • /etc/nginx/conf.d/
      存放用户自定义的服务器块(Server Block)配置,通常以 .conf 结尾。

    • /etc/nginx/modules/
      动态模块加载目录(CentOS 默认不使用 sites-available/enabled 结构)。

    •  /var/log/nginx//var/log/nginx/ 目录是 NGINX 的默认日志位置,您可以从中找到一个 access.log 文件和 error.log 文件。默认情况下,访问日志包含 NGINX 服务的每条请求的条 目。如果启用了 debug 模块,则错误日志文件包含错误事件和调试信息。

  • 默认站点配置

    /etc/nginx/conf.d/default.conf  # 默认的服务器块配置模板

2. 日志文件

  • 访问与错误日志

    /var/log/nginx/access.log   # 记录所有客户端请求
    /var/log/nginx/error.log    # 记录 Nginx 运行时错误和警告
  • 日志轮转配置

    /etc/logrotate.d/nginx      # 日志自动切割策略

3. 缓存与临时文件

  • 代理缓存

    /var/cache/nginx/           # 存放代理缓存和 FastCGI 缓存
  • 临时文件

    /var/lib/nginx/             # 存放临时文件和状态数据

4. SSL/TLS 证书

  • 默认证书路径
    /etc/pki/tls/certs/         # 系统默认 SSL 证书存储位置
    /etc/letsencrypt/live/      # Let's Encrypt 证书路径(使用 Certbot 时)

关键命令

1. 安装与更新

# 安装 Nginx(需启用 EPEL 仓库)
sudo yum install epel-release
sudo yum install nginx

# 更新 Nginx
sudo yum update nginx

2. 服务管理

# 启动/停止/重启/重载
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx    # 强制重启(中断连接)
sudo systemctl reload nginx     # 平滑重载配置(推荐)

# 设置开机自启
sudo systemctl enable nginx

# 查看服务状态
sudo systemctl status nginx

3. 配置检查与调试

# 检查配置文件语法
sudo nginx -t

# 查看 Nginx 版本及编译参数
nginx -V

# 查看运行中的配置(需 root 权限)
sudo nginx -T

4. 日志管理

# 实时监控访问日志
tail -f /var/log/nginx/access.log

# 查看最近 100 条错误日志
tail -n 100 /var/log/nginx/error.log

# 清空日志文件(谨慎操作)
cat /dev/null > /var/log/nginx/access.log

5. 进程管理

# 查看 Nginx 进程
ps aux | grep nginx

# 强制终止所有 Nginx 进程
sudo pkill nginx

配置示例

1. 添加新站点

  1. 在 /etc/nginx/conf.d/ 创建配置文件(如 my-site.conf):
    server {
        listen 80;
        server_name example.com;
        root /usr/share/nginx/my-site;
        index index.html;
    }
  2. 检查配置并重载:
    sudo nginx -t && sudo systemctl reload nginx

2. 配置 HTTPS

  1. 使用 Certbot 自动生成证书:
    sudo certbot --nginx -d example.com
  2. 证书续期测试:
    sudo certbot renew --dry-run

3. 反向代理配置

在 /etc/nginx/conf.d/proxy.conf 中添加:

server {
    listen 80;
    server_name api.example.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

注意事项

  1. 防火墙配置
    CentOS 默认使用 firewalld,需开放 HTTP/HTTPS 端口:

    sudo firewall-cmd --permanent --add-service=http
    sudo firewall-cmd --permanent --add-service=https
    sudo firewall-cmd --reload
  2. SELinux 问题
    若遇到权限错误,可临时禁用 SELinux 或调整策略:

    sudo setenforce 0          # 临时禁用
    sudo semanage port -a -t http_port_t -p tcp 8080  # 允许自定义端口
  3. 默认配置清理
    建议禁用默认站点:

    sudo rm /etc/nginx/conf.d/default.conf

总结

通过掌握 CentOS 下 Nginx 的核心文件、目录和命令,您可以高效地部署和管理 Web 服务。建议结合 nginx -t 检查配置后再重载服务,避免因语法错误导致服务中断。


阅读原文:原文链接


该文章在 2025/7/1 23:24:17 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2025 ClickSun All Rights Reserved