autoindex

'autoindex' 指令可在 NGINX 中启用或禁用目录索引。 — NGINX HTTP Core

autoindex
httpserverlocation
语法autoindex on | off;
默认值off
上下文http, server, location
模块NGINX HTTP Core
参数flag

说明

'autoindex' 指令允许 NGINX 在目录中没有索引文件时生成并显示文件列表。当启用时,如果用户请求一个没有索引文件(例如 index.html 或 index.htm)的目录,NGINX 将返回该目录中文件的可排序列表。 该指令可在不同上下文中设置:http、server 和 location。通过设置 'autoindex on',用户可以暴露目录内容,这在调试时可能有用,但如果敏感文件被无意中暴露,则可能带来安全风险。输出可以通过相关指令定制,例如 'autoindex_format',以使用不同的输出格式(如精简或完整列表)。 重要的是要适当配置目录权限以避免未经授权的访问。当 'autoindex' 与像 'allow' 和 'deny' 这样的访问控制指令结合使用时,NGINX 会先应用访问规则以决定是否拒绝或允许该请求,然后才处理索引。

配置示例

location /files {
    autoindex on;
}

如果目录权限未正确设置,启用 'autoindex' 可能会向用户暴露敏感文件。

目录列表可能会泄露应用程序的结构,这在生产环境中可能构成安全隐患。