Nginx配置autoindex浏览目录列表

Nginx默认是不允许列出整个目录的。如需此功能, 打开nginx.conf文件,在location server 或 http段中加入

autoindex on;

另外两个参数最好也加上去:

autoindex_exact_size off;

默认为on,显示出文件的确切大小,单位是bytes。 改为off后,显示出文件的大概大小,单位是kB或者MB或者GB

autoindex_localtime on;

默认为off,显示的文件时间为GMT时间。

改为on后,显示的文件时间为文件的服务器时间

location /{
root   /var/www/html;
autoindex on;
}

这段代码的意思就是把 /var/www/html目录作为根目录来直接列出来。

当然,我在做这个事情的时候也碰到了一个问题。一般一台NGINX服务器上会有多个网站。那么怎么样把其中的一个网站设置为列出目录呢?

其实很简单,把该网站的.conf文件全部修改才行。如修改成如下即可:

server {
    listen 80;
    charset utf-8;
    server_name localhost;
    root /www/web/default;

    location / {
        autoindex on;
        autoindex_exact_size off;
        autoindex_localtime on;
    }
}

参考

http://wiki.nginx.org/HttpAutoindexModuleChs

Comments