两个轻量级文件目录列表程序:H5ai与Directory Lister

网盘有点吃服务器内存,那么有没有什么轻量级的程序可以方便的管理自己的文件呢?这里推荐两个本人用过的程序:H5ai与Directory Lister。


感谢Rat's Blog
(电脑端可以自行从本文右侧目录跳转查看两个程序的安装方法。目录暂不支持手机端,手机党请下滑~)
(本文基于宝塔面板)


前期准备

(两个程序均基于Nginx和PHP。PHP版本最好选择7.2)

  • 把需要的域名解析到服务器IP,例如share.xxx.com。
  • 宝塔面板左侧“网站”-“新建站点”,填入域名,PHP版本选择7.2,直接创建站点即可。
  • 宝塔面板左侧“文件”-选择刚创建的站点,删除站点根目录下的四个文件。删不掉的可以忽略。

安装H5ai

  • H5ai官网复制下载链接,在站点根目录中点击“远程下载”,将程序打包下载到本地。
  • 解压,将_h5ai文件夹整个放在站点根目录下即可。
  • 宝塔面板左侧“PHP”-“设置”-“配置文件”,Ctrl+F搜索disable_functions,删除其中的putenv函数。
  • 宝塔面板左侧“网站”-“设置”-“配置文件”,在“root/www/wwwroot/xxx.xxx.com;”这一行的后面添加下方代码,用来指定H5ai的主页。
    index index.html index.php /_h5ai/public/index.php;
  • 至此H5ai已经可以正常使用。将文件存在网站根目录下,即与“_h5ai”文件夹同级的目录下,即可从你的网站直接访问文件。视频文件可以直接在线播放。
    H5ai界面示例

(以下是为H5ai添加页面管理员用户密码登录功能的方法,不需要可以略过)

  • 宝塔面板左侧“文件”-“根目录/www/wwwroot/你的H5ai站点/_h5ai/public/index.php”-点击编辑,在开头<?php的下方添加下方代码
    auth();
  • 继续在此文档最后面添加下方代码,其中账号和密码修改为自己需要的。今后登录你的H5ai文件目录列表站点时,均需要账号和密码。
function auth ()
{
        $valid_passwords = array ("账号" => "密码");
        $valid_users = array_keys($valid_passwords);

        $user = $_SERVER['PHP_AUTH_USER'];
        $pass = $_SERVER['PHP_AUTH_PW'];

        $validated = (in_array($user, $valid_users)) && ($pass == $valid_passwords[$user]);

        if (!$validated) {
          header('WWW-Authenticate: Basic realm="My Realm"');
          header('HTTP/1.0 401 Unauthorized');
          die ("Not authorized");
        }
}

安装Directory Lister

  • 复制由小夜魔改的Directory Lister程序下载链接。从站点根目录下点击“远程下载”,将程序打包下载到本地。
  • 解压,将“Directory Lister”内的所有文件剪切,粘贴在站点根目录下。
  • 宝塔面板左侧“网站”-“设置”-“伪静态”,添加如下代码。
location / {
    rewrite /(.*)/$ /index.php?dir=$1 last;
}
  • 至此Directory Lister已经可以正常使用。将文件存在网站根目录下,即与“resources”文件夹同级的目录下,即可从你的网站直接访问文件。
    Directory Lister界面示例
我来叭叭一下