如何通过Nginx安装第三方模块及禁止指定路径下载文件?这里搬主题以BT宝塔面板为例,介绍一下这些配置的图文教程。
什么?还没安装BT宝塔面板?点击进行下载安装
宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取
一、安装第三方模块
我们这里第三方模块以Fancyindex为例
1.下载Fancyindex源码
因为Fancyindex模块已经录入到Nginx官方库,可以去Nginx官方下载和看指南:https://www.nginx.com/resources/wiki/modules/fancy_index/
我们直接到服务器终端执行以下命令下载源码
wget https://github.com/aperezdc/ngx-fancyindex/releases/download/v0.5.2/ngx-fancyindex-0.5.2.tar.xz
2.下载好后,我们进行解压:
xz -d ngx-fancyindex-0.5.2.tar.xz
tar -xvf ngx-fancyindex-0.5.2.tar
3.然后到面板的软件商店中找到Nginx,选择编译安装,安装时再选择添加模块模块参数:
--add-module=/root/ ngx-fancyindex-0.5.2
(路径根据自己解压路径为准)

4.编译完成后可到服务器终端执行以下命令进行查看模块是否安装成功
2>&1 nginx -V |tr '' '\n'|grep ngx-fancyindex-0.5.2
二、使用Fancyindex
1.我们只需要编辑网站配置文件写入以下代码
location ^~/data{ alias /www/wwwroot/www.test.com/download; # 映射地址 fancyindex on; # 启用fancyindex fancyindex_exact_size off; # 不显示精确大小 fancyindex_time_format "%Y-%m-%d %H:%M"; # 文件日期 fancyindex_localtime on; # 使用用户本地时间 }

2.编辑完之后,点击保存,浏览器访问即可看到效果

三、禁止指定路径下载文件
1.打开网站配置文件编辑,写入以下内容
#禁止/download路劲下文件下载 location ~ ^/download { #匹配以 /download 开头的路径 location ~ \.(zip|rar|sql|sh|bak|gz|7z)$ { #匹配以zip,rar,sql...结尾的文件 return 444; #"return"停止处理请求,直接返回响应码444,执行return指令后, location中后续指令将不会被执行 } }

2.编辑后
点击保存,此时我们再到服务器终端使用wget进行下载测试

什么?还没安装BT宝塔面板?点击进行下载安装
评论前必须登录!
立即登录 注册