热搜词
发表于 2021-11-2 22:05:08 | 显示全部楼层 |阅读模式
前言DirectoryLister是一款非常小巧的PHP文件浏览器,适合搭建一个简单的个人文件站。
我的示例站点:链接下载&安装

    下载
    官方下载:链接
    本地镜像:链接
    本站只提供2.7.1版本下载,推荐去官网下载。
  • 安装
    解压到网站根目录,设置好权限,推荐只给读权限
    cd 【网站根目录】find ./ -type f -print|xargs chmod 400find ./ -type d -print|xargs chmod 500
    [size=0.9em]Bash
    复制


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

定制
接下来就是定制外观了,效果如图:
定制效果
  • 汉化
    打开/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', //日期格式
    [size=0.9em]PHP
    复制



//第14行,隐藏文件,可以根据需要添加要隐藏的文件和目录
'hidden_files' => array(
'.ht',
'
/.ht',
'resources',
'resources/
',
'analytics.inc',
),
打开`/resources/themes/bootstrap/index.php`下面只截取修改的地方,注意行号```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>
  • 修改页脚,显示磁盘剩余空间
    因为PHP没法直接获取磁盘占用,而使用exec函数又有潜在的风险,因此我使用Shell脚本获取磁盘空间,然后用PHP读取
  • 脚本
    path=【网站根目录】/resources/themes/bootstrap/diskinfousedsize=$(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))freepercent=$((100-usedpercent))echo "$usedsizeh $totalsizeh $usedpercent% $freepercent%">$path
    [size=0.9em]Bash
    复制


    注意更改生成的diskinfo文件的权限和所有者
  • 添加计划任务
    可以使用cron,我图方便就用宝塔面板自带的计划任务了,隔一段时间更新diskinfo文件即可,我设置为每小时更新1次。
  • 修改页脚
    打开/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><hr><div class="footer"><?php $fn=fopen(THEMEPATH."/diskinfo","r");$diskinfo=explode(' ',fgets($fn));fclose($fn);?><p><a href="https://blog.chrxw.com">Chr_ 小屋</a> 提供技术支持,部分文件来自互联网</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>
    [size=0.9em]PHP
    复制


  • 修改页头
    修改/resources/themes/bootstrap/default_header.php即可,我没做修改


全部评论0
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-11-24 20:10 , Processed in 0.155846 second(s), 22 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team