温馨提示×

怎样禁止Debian nginx目录浏览

小樊
60
2026-09-12 11:07:33
栏目: 智能运维

在 Debian 上,Nginx 的**目录浏览(目录列表)**是由 autoindex 指令控制的。默认情况下 Nginx 不开启目录浏览,但如果之前被开启过,可以通过以下方式禁止。


一、全局或站点配置中关闭目录浏览

编辑对应的 Nginx 配置文件(常见位置):

sudo nano /etc/nginx/nginx.conf
# 或
sudo nano /etc/nginx/sites-enabled/default
# 或你的站点配置文件

找到类似以下内容:

location / {
    autoindex on;
}

改为:

location / {
    autoindex off;
}

✅ autoindex off; 表示禁止目录浏览


二、只针对某个目录禁止

例如只允许 /downloads 不能列目录:

location /downloads/ {
    autoindex off;
}

三、检查是否还有残留配置

有时候目录浏览是在子配置中开启的,比如:

grep -R "autoindex" /etc/nginx/

确保没有 autoindex on;


四、确认根目录没有默认索引文件(可选)

如果目录下没有 index.html 等文件,且 autoindex on,就会列出文件。

建议确保有默认首页:

index index.html index.htm;

五、修改后重新加载 Nginx

sudo nginx -t
sudo systemctl reload nginx

六、验证是否生效

浏览器访问:

http://你的服务器IP/某个目录/

如果返回:

403 Forbidden

说明目录浏览已成功禁止 ✅


如果你愿意,可以把你的 Nginx 配置片段发出来,我可以帮你精确定位问题。

0 踩