目录
Nginx自带的autoindex模块配置
参数配置说明
效果图
其他配置调整
二、第三方模块配置
说明
fancy模块配置
参数配置说明
效果图
Nginx不仅仅作为web站点使用,也可以当做一个文件共享的使用,索引目录列表提供用户下载文件。Nginx自带的autoindex模块ngx_http_autoindex_module功能很简单,该模块是默认安装的。
语法: autoindex on | off;
应用模块: http, server, location;
描述:开启或禁用目录浏览功能,默认是禁用;
语法:autoindex_exact_size off|on;
描述:默认为on,显示出文件的确切大小,单位是bytes。一般会改为off,显示出文件的大概大小,单位是kB或者MB或者GB;
语法:autoindex_format html | xml | json | jsonp
描述:设置目录列表的格式。默认是html;
语法:autoindex_localtime on|off;
描述:on显示文件的本地时间;否则显示文件的GMT时间。默认是off;
charset utf-8; 解决文件名显示中文乱码问题
1#编辑src/http/modules/ngx_http_autoindex_module.c,设置文件名显示宽度,默认是50,可修改为其他的:
由于使用nginx自带目录索引,功能简单、样式也不好看,现在使用fancyindex插件来做索引,美化目录浏览功能。相比nginx的autoindex功能,fancy功能更加完善,还提供列分隔、列排序等。
下载:git clone https://github.com/aperezdc/ngx-fancyindex.git ngx-fancyindex
参考资料:https://github.com/aperezdc/ngx-fancyindex
安装时加入fancy模块,并重新编译安装
./configure --prefix=/usr/local/nginx --add-module=/root/ngx-fancyindex
语法: fancyindex [on | off]
配置块: http, server, location
描述: 开启/关闭目录索引功能。默认为off
语法:fancyindex_exact_size [on | off]
描述: 不使用精确的大小(byte),显示出文件的大概大小,单位是kB或者MB或者GB。默认是on;
语法: fancyindex_localtime [on | off]
描述: on使用当地时间显示文件的创建时间。默认是off(GMT时间)
语法: fancyindex_header [path]
描述: 指定哪个文件嵌入到索引页面的头部.用法和fancyindex_footer类似;
语法: fancyindex_footer [path]
描述: 指定哪个文件嵌入到索引页面的底部;
语法: fancyindex_ignore string1 [string2 [... stringN]]
描述: 哪些文件/目录隐藏掉,如果你的nginx支持正则,那么可以使用正则表达式来过滤
例如我想隐藏dir打头的文件或目录以及文件filea.txt,配置如下:fancyindex_ignore "dir*" "filea.txt"
语法:fancyindex_default_sort [name | size | date | name_desc | size_desc | date_desc]
描述:调整目录排序,默认是按名称排序;
语法:fancyindex_directories_first [on | off]
描述:是否将目录统一排到最上面/最开始的位置。默认是on的;
语法:fancyindex_hide_parent_dir [on | off]
描述:是否隐藏‘parent directory’,‘是’则用户只能通过浏览器的倒退键返回上一级。
语法:fancyindex_show_path [on | off]
描述:是否显示该目录浏览页的路径,默认是开启的。只有设置了自定义的header 才能关闭;
语法:fancyindex_name_length [length]
描述:设置目录页显示文件名宽度,length默认是50;
语法:fancyindex_time_format "%Y-%m-%d %H:%M"
描述:设置文件日期显示格式;
#如果未添加fancyindex_header和fancyindex_footer参数,则最初的显示效果如下:
下载主题:wget -O fancytheme.zip https://github.com/Naereen/Nginx-Fancyindex-Theme/archive/master.zip
压缩包内有两个主题:
Nginx-Fancyindex-Theme-dark
Nginx-Fancyindex-Theme-light
解压,并将其中一个主题复制到/usr/local/nginx/html
cp -r Nginx-Fancyindex-Theme-dark /usr/local/nginx/html
显示效果: