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

Nginx目录结构

Nginx目录结构

​ Nginx 的安装目录结构可能会因安装方式(如使用包管理器、源码编译等)和操作系统的不同而有所差异。以下是通过在线安装时,Nginx 默认的目录结构,以及各目录和文件的作用。

yum install nginx
  • 查询nginx

    [root@Rocky ~]# whereis nginx
    nginx: /usr/sbin/nginx /usr/lib64/nginx /etc/nginx /usr/share/nginx /usr/share/man/man3/nginx.3pm.gz /usr/share/man/man8/nginx.8.gz
    
    

    可执行文件路径

    • /usr/sbin/nginx:这是 Nginx 的可执行文件所在位置。/usr/sbin 目录一般存放系统级的可执行文件,供系统管理员使用。你可以通过在终端运行该文件来启动、停止、重启 Nginx 服务。例如,使用 sudo /usr/sbin/nginx 可以启动 Nginx 服务,sudo /usr/sbin/nginx -s stop 能停止 Nginx 服务。

    模块文件路径

    • /usr/lib64/nginx:该目录存放着 Nginx 的动态模块文件。这些模块是一些 .so(共享对象)文件,用于扩展 Nginx 的功能。像 ngx_http_image_filter_module.so 模块可用于对 HTTP 请求中的图片进行过滤和处理;ngx_http_perl_module.so 允许在 Nginx 配置中使用 Perl 脚本。

    配置文件路径

    • /etc/nginx:Nginx 的主配置目录,包含了众多配置文件,用于控制 Nginx 的行为。
      • nginx.conf:主配置文件,包含全局配置、事件配置、HTTP 配置等关键信息,是 Nginx 启动时首先读取的配置文件。
      • conf.d 目录:通常用于存放虚拟主机的配置文件,Nginx 会自动加载该目录下的所有 .conf 文件,便于对不同的网站或服务进行独立配置。
      • fastcgi.conf、fastcgi_params 等文件:用于配置 Nginx 与 FastCGI 服务器的交互,如传递请求参数、设置超时时间等。

    资源文件路径

    • /usr/share/nginx:存放 Nginx 的共享资源,例如:
      • html 目录:是 Nginx 默认的网站根目录,当你访问 Nginx 服务器时,默认会从这个目录下查找并返回相应的文件,如 index.html 是默认的首页文件。
      • modules 目录:存放与 Nginx 模块相关的配置文件,和 /usr/lib64/nginx 目录下的模块文件相配合,对模块的功能进行具体配置。

    手册页路径

    • /usr/share/man/man3/nginx.3pm.gz/usr/share/man/man8/nginx.8.gz:这两个是 Nginx 的手册页文件。在 Linux 系统中,man 命令用于查看程序的帮助文档,man 手册分为不同的章节,man3 通常是库函数和系统调用的手册,man8 主要是系统管理命令和守护进程的手册。你可以使用 man 3 nginxman 8 nginx 来查看相应的帮助信息。
  • 树状显示目录结构

    [root@Rocky ~]# tree  /usr/lib64/nginx /etc/nginx /usr/share/nginx
    /usr/lib64/nginx
    └── modules
        ├── ngx_http_image_filter_module.so
        ├── ngx_http_perl_module.so
        ├── ngx_http_xslt_filter_module.so
        ├── ngx_mail_module.so
        └── ngx_stream_module.so
    /etc/nginx
    ├── conf.d
    │   └── vhost.conf
    ├── default.d
    ├── fastcgi.conf
    ├── fastcgi.conf.default
    ├── fastcgi_params
    ├── fastcgi_params.default
    ├── koi-utf
    ├── koi-win
    ├── mime.types
    ├── mime.types.default
    ├── nginx.conf
    ├── nginx.conf.default
    ├── scgi_params
    ├── scgi_params.default
    ├── uwsgi_params
    ├── uwsgi_params.default
    └── win-utf
    /usr/share/nginx
    ├── html
    │   ├── 404.html
    │   ├── 50x.html
    │   ├── bbs
    │   │   ├── index.html
    │   │   └── logs
    │   │       └── access_bbs.log
    │   ├── index.html
    │   ├── nginx-logo.png
    │   ├── poweredby.png
    │   └── www
    │       ├── index.html
    │       └── logs
    │           └── access_www.log
    └── modules
        ├── mod-http-image-filter.conf
        ├── mod-http-perl.conf
        ├── mod-http-xslt-filter.conf
        ├── mod-mail.conf
        └── mod-stream.conf
    
    9 directories, 35 files
    

    /usr/lib64/nginx/modules

    • 该目录用于存放 Nginx 的动态模块文件,这些模块扩展了 Nginx 的功能。
      • ngx_http_image_filter_module.so:用于对 HTTP 请求中的图片进行过滤和处理,例如调整图片大小、裁剪、添加水印等。
      • ngx_http_perl_module.so:允许在 Nginx 配置中使用 Perl 语言编写脚本,以实现更灵活的请求处理和业务逻辑。
      • ngx_http_xslt_filter_module.so:用于对 HTTP 响应中的 XML 数据进行 XSLT 转换,将 XML 数据转换为其他格式,如 HTML。
      • ngx_mail_module.so:提供了对邮件协议(如 SMTP、POP3、IMAP)的支持,使 Nginx 可以作为邮件服务器的前端,实现邮件的代理、过滤等功能。
      • ngx_stream_module.so:主要用于处理 TCP 和 UDP 流,支持对非 HTTP 协议的流量进行代理、转发和处理,例如用于代理 MySQL、Redis 等数据库连接。

    /etc/nginx

    • Nginx 的主配置目录,包含了 Nginx 服务器的各种配置文件,Nginx 在启动时会读取这些文件来确定如何运行。
    • conf.d:该目录用于存放用户自定义的 Nginx 虚拟主机配置文件。每个配置文件通常对应一个或多个网站的配置,例如vhost.conf文件可能包含了特定域名的服务器配置,如服务器名称、端口、SSL 设置、请求处理规则等。
    • default.d:这个目录用于存放一些默认的配置片段或备用配置文件,通常在主配置文件中通过包含指令(include)来引用,以提供一些默认的配置选项或覆盖某些全局配置。
    • fastcgi.conffastcgi.conf.default:用于配置 FastCGI 相关的参数,如 FastCGI 服务器的地址、端口、请求头和响应头的设置等。.default文件通常是默认的配置模板,fastcgi.conf是实际使用的配置文件,管理员可以根据需要修改fastcgi.conf来调整 FastCGI 的行为。
    • fastcgi_paramsfastcgi_params.default:包含了传递给 FastCGI 进程的参数,这些参数用于在 Nginx 与 FastCGI 服务器之间传递信息,例如客户端的请求头、服务器变量等。同样,.default文件是默认模板,fastcgi_params是可修改的实际配置文件。
    • koi-utfkoi-win:这两个文件用于字符编码转换,koi-utf用于将 KOI8-R 编码转换为 UTF-8 编码,koi-win用于将 KOI8-R 编码转换为 Windows-1251 编码,主要用于处理不同字符编码的文本数据。
    • mime.typesmime.types.default:定义了 Nginx 如何识别不同类型的文件,根据文件的扩展名来确定其对应的 MIME 类型。MIME 类型用于在 HTTP 响应中正确地标识文件的内容类型,以便客户端能够正确地处理和显示文件。.default文件是默认的 MIME 类型定义,mime.types可以根据实际需求进行修改和扩展。
    • nginx.confnginx.conf.default:Nginx 的主配置文件,包含了 Nginx 服务器的全局配置信息,如进程数、运行用户、错误日志路径、HTTP 服务器配置等。.default文件是默认的主配置模板,nginx.conf是实际使用的配置文件,管理员可以通过修改nginx.conf来定制 Nginx 的行为。
    • scgi_paramsscgi_params.default:与fastcgi_params类似,用于配置 SCGI(Simple Common Gateway Interface)相关的参数,用于在 Nginx 与 SCGI 服务器之间传递信息。
    • uwsgi_paramsuwsgi_params.default:用于配置 uWSGI 相关的参数,uWSGI 是一个应用服务器,常用于 Python Web 应用的部署。这些参数用于在 Nginx 与 uWSGI 服务器之间传递请求和响应信息。

    /usr/share/nginx

    • 该目录用于存放 Nginx 的一些共享资源,如 HTML 文件、模块配置文件等。
    • html:默认情况下,Nginx 会将该目录下的文件作为 HTTP 服务器的文档根目录,用于存放网站的静态文件,如 HTML 页面、图片、CSS 样式表、JavaScript 脚本等。
      • 404.html50x.html:分别是用于显示 404(页面未找到)和 50x(服务器内部错误等)错误页面的 HTML 文件,当客户端请求的页面不存在或服务器发生错误时,Nginx 会返回相应的错误页面给客户端。
      • bbswww:这两个子目录可能是用于存放不同网站或不同应用的相关文件,每个子目录下都有index.html文件作为默认首页,logs目录用于存放访问日志文件,如access_bbs.logaccess_www.log分别记录了对bbswww应用的访问记录。
    • modules:该目录下的文件是 Nginx 模块的配置文件,与/usr/lib64/nginx/modules中的动态模块文件相对应,用于配置这些模块的行为和参数。
      • mod-http-image-filter.conf:用于配置ngx_http_image_filter_module模块,定义了图片过滤相关的参数和规则。
      • mod-http-perl.conf:用于配置ngx_http_perl_module模块,指定了 Perl 脚本的路径、加载顺序等配置信息。
      • mod-http-xslt-filter.conf:用于配置ngx_http_xslt_filter_module模块,设置了 XSLT 转换的相关参数和规则。
      • mod-mail.conf:用于配置ngx_mail_module模块,包含了邮件服务器相关的配置信息,如 SMTP、POP3、IMAP 协议的设置。
      • mod-stream.conf:用于配置ngx_stream_module模块,定义了 TCP 和 UDP 流处理的相关参数和规则。

相关文章:

  • Mininet--moduledeps.py源码解析
  • 为何服务器监听异常?
  • Next Route Handlers的使用
  • 树莓派开发(一):烧录系统,设置SSH远程登录,用摄像头拍照
  • Nginx反向代理及负载均衡
  • 精选10个好用的WordPress免费主题
  • 代码随想录第55期训练营第十一天|LeetCode150.逆波兰表达式求值、239.滑动窗口最大值、347.前K个高频元素
  • 【日常笔记 1】 有关异常学习笔记
  • 《破解老龄化的智能密钥:机器人四维战略与未来养老生态》
  • 魔法测试:用本地多模态大模型(Qwen2.5-VL)将PDF转为Markdown文档
  • 大文件分片上传及断点续传实现
  • AI胡思乱想系列——大模型被当成了X度
  • 【Git Log 指南:提交历史的有效管理与分析】
  • 力扣刷题39. 组合总和
  • 基于 OCO - 2 氧气 A 带辐射数据与地面台站气压观测数据构建近地面气压监测算法方案
  • Java 8-17核心特性全景解析之Java8
  • 【WPF】ListView数据绑定
  • 4. 如何减少大模型幻觉?⸺大模型外挂向量数据库的分析(知识延伸版)
  • 基于DIFY与DeepSeek搭建AI技术博客智能体:从本地部署到自动化创作
  • 【测试篇】探秘自动化测试函数:解锁高效测试新路径
  • 微信 网站提成方案点做/semantic ui
  • wordpress仿今日头条/seo搜索优化邵阳
  • 曲靖网站建设公司/高级seo课程
  • 黄冈网站优化公司哪家好/媒体资源
  • 国外网站怎么建设/卡一卡二卡三入口2021
  • 绿叶网站怎么做/舆情信息范文