nginx做文件服务器的优化
侧边栏壁纸
博主昵称
yuc

  • 累计撰写 291 篇文章
  • 累计收到 0 条评论

nginx做文件服务器的优化

yuc
yuc
2022-06-13 / 最后修改: 2022-06-13 02:48 / 0 评论 / 744 阅读 / 正在检测是否收录...
背景

目前大部分浏览器已经不支持ftp协议了,win11也移除了支持ftp的ie,那么现在使用ftp有几个方案:

  1. 使用资源管理器,但界面看起来就不太舒服了
  2. 使用cmd匿名登录或者wget下载指定文件,浏览文件不方便
  3. 使用第三方工具登录ftp或者下载ftp文件,浏览文件不方便
解决

其实下载ftp和查看ftp文件都还是支持的,只是更好的观赏性和便利性已经不支持了。而且ftp的重要功能是上传,对于内网大部分的用户而言他们都不需要上传,所以我们新增一个http协议吧,让下载/浏览/便利重新回归,此次使用nginx的文件下载功能。

nginx文件下载

nginx最小化的编译安装也是支持文件下载的,参数如下:

server {
	listen 80;
	location / {
		autoindex on;
		root html;
	}
}

这个配置满足了文件下载功能,但是有几个问题:中文文件名乱码,文件名超过一定字符显示不完整,再就是不够美观。所以采用开源模块fancy来解决此文件。

优化

fancy主体,此模块编译进nginx

https://github.com/aperezdc/ngx-fancyindex

主题优化代码

https://github.com/TheInsomniac/Nginx-Fancyindex-Theme

安装后更新为如下代码:

# 其中主题解压到了/var/ftp/pub/fancyindex,其他方法貌似访问有问题
# 前面三个参数功能nginx默认是支持的,把fancy改成auto就行了
server {
    listen 80;
    charset utf-8,gbk;
    location / {
            fancyindex on;
            fancyindex_localtime on;
            fancyindex_exact_size off;
            fancyindex_name_length 500;
            fancyindex_header "/fancyindex/header.html";
            fancyindex_footer "/fancyindex/footer.html";
            fancyindex_ignore "fancyindex";
            alias /var/ftp/pub/;
    }
}
0

评论

博主关闭了当前页面的评论