Linux下搭建Directory Lister目录列表程序

平时在折腾VPS的时候,经常会涉及到下载一些脚本和文件。因此自己一直想做一个简单的下载站,但是各种可以看到的各种目录列表程序,要么占用资源比较多,要么没有方便的直链功能,尝试了一下都不太满意。找了一圈,终于发现了一个叫做Directory Lister的应用程序,小巧、轻量而且简单,很符合我的需求,于是就决定使用Directory Lister搭建一个自己的下载站,简单实用,而且可以直链,管理起来也比较方便。具体的信息可以访问它的官方网站了解更多。

注意所需条件

注意对PHP版本的要求

虽然Directory Lister是一个很简单的PHP应用程序,但是建议在动手之前,先认真阅读一下官方的说明文档,不同的Directory Lister版本对于PHP的版本要求也不同。大致来说,Directory Lister的4.x版本需要PHP8.1​以上的版本,5.x以上版本需要PHP8.2以上的版本,使用lnmp脚本搭建网站环境的时候需要注意,我这里使用的是目前最新的Directory Lister-5.3.2版本。如果PHP版本需要升级,可以在lnmp的文件夹里选择运行upgrade.sh​。升级脚本会提示输入需要安装的PHP版本,这时可以去php官网查找,输入需要安装的PHP版本号,脚本会启动升级程序。当然,如果在宝塔等可视化面板的环境下,这些要简单和方便很多。

需要fileinfo插件

Directory Lister需要nginx的fileinfo​插件。在宝塔面板下,可以直接在PHP的控制面板扩展里去安装,操作很方便;在lnmp的环境下稍微复杂一些,需要进入lnmp的安装目录,修改lnmp.conf​ 文件中Enable_PHP_Fileinfo​的值由”n”改为”y”,然后运行./upgrade.sh​即可安装插件。但是,这样做的话,相当于把php重新安装了一遍,时间比较长。因此,建议在安装lnmp环境时就一并把一些常用的插件扩展安装上,也就是修改lnmp.conf文件在安装php的同时就把插件也安装好。

搭建Directory Lister

下载应用程序

我使用的是Directory Lister-5.3.2版本,目前是最新的,可以去官方网站上下载

# 下载Directory Lister源码
wget https://github.com/DirectoryLister/DirectoryLister/releases/download/5.3.2/DirectoryLister-5.3.2.tar.gz
# 解压缩,解压后要确保文件在网站文件夹下
tar -zxvf DirectoryLister-5.3.2.tar.gz

配置.env文件

# Here you can control Directory Lister configuration through environment
# variables. See the configuration documentation for additional information:
# https://docs.directorylister.com/configuration

APP_DEBUG=false
APP_LANGUAGE=zh-CN

DISPLAY_READMES=true
READMES_FIRST=false
ZIP_DOWNLOADS=false

GOOGLE_ANALYTICS_ID=false

MATOMO_ANALYTICS_URL=false
MATOMO_ANALYTICS_ID=false

SORT_ORDER=type
REVERSE_SORT=false

如果要使用中文界面,需要设置APP_LANGUAGE=zh-CNZIP_DOWNLOADS=false一定要设置好,否则陌生人可以将你的整个目录打包下载,这会产生非常多的缓存垃圾占用服务器有限的硬盘空间

避坑与排错

一般来说,Directory Lister安装好以后可能出现两个问题。

HTTP 500错误

这个一般是由于网站用户的权限或者用户名、用户组配置错误产生的,宝塔面板下一般没有问题,有问题的话一般出现在lnmp的环境下,如下图所示

主要原因是lnmp在创建网站时候,用户组和用户权限错误,如下图所示

解决问题的办法,就是将网站目录及下面的目录和文件的用户组和用户统一改为www:www

chown -R www:www *

清除缓存文件

首次安装没有缓存文件,也不需要清除。但是在备份恢复的时候,我们安装好了Directory Lister把文件上传到服务器后,打开网页也会出现http 500​错误,这就是因为缓存的问题,解决方法如下

# 进入网站的缓存目录
cd /网站目录/app/cache
# 删除缓存文件
rm -rf *

未经允许不得转载:南埜小站 » Linux下搭建Directory Lister目录列表程序

相关文章

评论 (0)