Nginx默认目录结构分conf、html、logs、sbin四部分:conf存配置文件(含nginx.conf和conf.d/);html为静态资源根目录;logs记录access.log和error.log;sbin存放nginx二进制程序及管理命令。

Nginx 的默认目录结构因安装方式(源码编译、包管理器安装)略有差异,但核心布局逻辑一致。理解各子目录的职责,有助于高效配置、调试与维护服务。
conf:存放所有配置文件,Nginx 运行的“大脑”
该目录集中管理 Nginx 的行为逻辑。主配置文件 nginx.conf 定义全局设置(如 worker 进程数、事件模型)、HTTP 模块基础参数及 include 指令引入的其他配置。常见做法是将 server 块拆分到 conf.d/ 下的独立文件(如 default.conf、app.conf),便于按站点或功能组织。SSL 证书、自定义 MIME 类型(mime.types)、FastCGI 参数(fastcgi_params)等也常置于本目录或其子目录中。
html:默认静态资源根目录,Web 内容的“起点”
这是 Nginx 启动后响应 GET / 请求时查找首页(如 index.html)的默认路径。它不参与动态处理,仅提供纯静态文件服务。若配置了 root 或 alias 指令,实际服务路径会覆盖此目录。开发调试时可直接在此放置测试页面;生产环境通常会将其指向应用构建输出目录(如 /var/www/myapp/dist),而非保留默认 html 结构。
logs:记录运行状态与访问行为,排障的“第一现场”
包含两个关键文件:access.log 记录每次 HTTP 请求(客户端 IP、时间、URL、状态码、响应大小等),用于流量分析与安全审计;error.log 记录启动失败、配置错误、模块异常、上游超时等系统级问题,日志级别(debug/info/warn/error)可在配置中调整。注意:日志路径和轮转策略(如用 logrotate)需在 nginx.conf 中显式配置,否则可能写入默认位置或因磁盘满导致服务异常。
sbin:存放可执行程序,Nginx 的“启动引擎”
核心文件为 nginx 二进制程序,负责加载配置、派生 worker 进程、处理网络请求。常用操作均通过此命令完成:
- nginx -t 验证配置语法
- nginx -s reload 平滑重载配置(不中断服务)
- nginx -s stop 快速终止(不等待请求完成)
- nginx -V 查看编译参数与模块列表
部分发行版会将 nginx 放入 /usr/sbin/,此时 sbin 目录可能不存在于安装前缀下,但功能角色不变。
不复杂但容易忽略:conf 中的 include 路径、html 的 root 权限、logs 的写入权限、sbin 的执行权限,这四类路径的归属与权限设置出错,是部署后服务无法启动或 403/502 错误的高频原因。

















