DirectoryLister安装与使用教程

2019-11-03T16:46:00

前言

DirectoryLister是一款非常小巧的PHP文件浏览器,适合搭建一个简单的个人文件站。
我的示例站点:链接

下载&安装

  1. 下载
    官方下载:链接

本地镜像:链接
本站只提供2.7.1版本下载,推荐去官网下载。

  1. 安装
    解压到网站根目录,设置好权限,推荐只给读权限
cd 【网站根目录】
find ./ -type f -print|xargs chmod 400
find ./ -type d -print|xargs chmod 500

如果能正确显示网页,说明安装成功了:

定制

接下来就是定制外观了,效果如图:

  1. 汉化
    打开/resources/config.php

下面只截取修改的地方,注意行号

//第6行,基础设置
'home_label'         => '文件下载',     //显示在左上角,自行修改
'hide_dot_files'     => true,          //是否隐藏.开头的文件
'list_folders_first' => true,          //排序时是否目录优先
'list_sort_order'    => 'natcasesort', //排序规则,默认即可
'theme_name'         => 'bootstrap',   //主题样式,不用改
'date_format'        => 'Y-m-d H:i:s', //日期格式

//第14行,隐藏文件,可以根据需要添加要隐藏的文件和目录
'hidden_files' => array(
  '.ht*',
  '*/.ht*',
  'resources',
  'resources/*',
  'analytics.inc',
),

打开/resources/themes/bootstrap/index.php
下面只截取修改的地方,注意行号

/*……第7行……*/
<title>【网页标题】</title>
<link rel="shortcut icon" href="<?php echo THEMEPATH; ?>/img/folder.png">
/*……第88行……*/
<div class="row">
    <div class="col-md-7 col-sm-6 col-xs-10">文件名</div>
    <div class="col-md-2 col-sm-2 col-xs-2 text-right">大小</div>
    <div class="col-md-3 col-sm-4 hidden-xs text-right">修改时间</div>
</div>
  1. 修改页脚,显示磁盘剩余空间
    因为PHP没法直接获取磁盘占用,而使用exec函数又有潜在的风险,因此我使用Shell脚本获取磁盘空间,然后用PHP读取

    1. 脚本
    path=【网站根目录】/resources/themes/bootstrap/diskinfo
    usedsize=$(df -l /| awk '/\//{print$3}')
    totalsize=$(df -l /| awk '/\//{print$2}')
    usedsizeh=$(df -lh /| awk '/\//{print$3}')
    totalsizeh=$(df -lh /| awk '/\//{print$2}')
    usedpercent=$((usedsize*100/totalsize))
  2. "$usedsizeh $totalsizeh $usedpercent% $freepercent%">$path

    注意更改生成的`diskinfo`文件的权限和所有者
    
    2. 添加计划任务
    可以使用cron,我图方便就用宝塔面板自带的计划任务了,隔一段时间更新`diskinfo`文件即可,我设置为每小时更新1次。
    
    3. 修改页脚
    打开`/resources/themes/bootstrap/default_footer.php`

    <style>
    .progress {text-align: center;width: 26em;margin:0 auto}
    .progress-text {position: absolute;right: 0;left: 0;vertical-align: center}
    .shadow-text {color: #fff;text-shadow: 0px 0px 10px rgba(0, 0, 0, 1)}
    </style>



    <div class="footer">
    <?php $fn=fopen(THEMEPATH."/diskinfo","r");$diskinfo=explode(' ',fgets($fn));fclose($fn);?>
    <p>由 Chr_ 小屋 提供技术支持,部分文件来自互联网</p>
    <p><div class="progress">

       <div class="progress-bar progress-bar-warning" role="progressbar" style="width: <?php echo $diskinfo[2];?>;"></div>
       <div class="progress-bar progress-bar-success" role="progressbar" style="width: <?php echo $diskinfo[3];?>;"></div>
       <div class="progress-text shadow-text">硬盘使用:<?php echo ($diskinfo[0]." \ ".$diskinfo[1]);?>

    </div></p>
    </div>

    
    4. 修改页头
当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »