Rintarou°

宝塔面板丨Nginx环境下H5ai(Dplayer)完整安装使用教程及注意事项
关于如何搭建H5ai,网上虽然有很多教程,但详细的却不多,有的也是比较模糊。本文将介绍一下如何在宝塔Nginx环境...
扫描右侧二维码阅读全文
30
2018/10

宝塔面板丨Nginx环境下H5ai(Dplayer)完整安装使用教程及注意事项

关于如何搭建H5ai,网上虽然有很多教程,但详细的却不多,有的也是比较模糊。本文将介绍一下如何在宝塔Nginx环境下搭建H5ai以及其中的一些注意事项。

Ⅰ、简介

H5ai是一款德国程序员Lars Jung打造的基于HTTP Web服务器的现代文件索引器,是一款功能强大的PHP文件目录列表程序,适合做个人仓库,它提供多种文件目录列表呈现方式,支持Apache Httpd, Lighttpd, Nginx等多种WEB服务器,支持多国语言(如英语,简体中文等),你可以在线预览以及下载TXT,图片,音频,视频等文件格式。

值得一试的理由:

  1. 可在线预览多种文件格式,适合用来做个人仓库。
  2. 提供多种文件目录列表呈现方式。
  3. 支持多种Web服务器以及多国语言。

Ⅱ、安装教程

1.环境要求

PHP 5.5+
scandir函数需开放


2.进入安装

1.宝塔面板安装

使用 SSH 连接工具,如宝塔远程桌面助手连接到您的 Linux 服务器后,挂载磁盘,根据系统执行相应命令开始安装(大约2分钟完成面板安装):

Centos安装命令

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh

Ubuntu/Deepin安装命令

wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && sudo bash install.sh

Debian安装命令

wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && bash install.sh

Fedora安装命令

wget -O install.sh http://download.bt.cn/install/install.sh && bash install.sh

如果安装出现问题的话请参考宝塔面板手册来解决问题

2.环境安装

安装完成后登录面板并选择安装LNMP环境

3.上传H5ai源码

H5ai下载(文章底部有提供)后将文件解压后放在网站根目录下的_h5ai文件夹内,结构如下

DOC_ROOT
 ├─ _h5ai
 ├─ your files
 └─ and folders

4.修改配置文件
在宝塔面板首页->左边的网站 -> H5ai(放H5ai的网站) -> 设置 -> 配置文件中,
找到index index.php index.html改为index index.html index.php /_h5ai/public/index.php

修改前

server
{
    listen 80;
    ...
    index index.php index.html index.htm default.php default.htm default.html;
    ...

修改后

server
{
    listen 80;
    ...
    index  index.html  index.php  /_h5ai/public/index.php;
    ...

5.安装完成

把你需要列的文件及目录放在_h5ai同目录下即可


Ⅲ、高级教程

1.功能安装

1、查看全部功能开放情况

访问http(s)://你的网站名/_h5ai/public/index.php来查看H5ai的功能开放情况,默认密码为空。

2、Use EXIF thumbs安装

宝塔用户可直接在后台点击php版本,安装扩展 -> exif 一键安装即可。

3、Movie thumbs (ffmpeg)安装

CentOS 6和7安装方法是不一样的,下面分别说明:
安装前都需要先安装epel扩展源:

# yum -y install epel-release

CentOS 6比较简单,安装yum源之后直接安装即可:

# su -c 'yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-6.noarch.rpm https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-6.noarch.rpm'
# yum -y install ffmpeg ffmpeg-devel

4、PDF thumbs安装

选择安装convert

# yum -y install ImageMagick

5、Shell tar/Shell zip/Shell du安装

这三项根据h5ai官网,在 php.ini 被禁用函数中去掉 exec 和 passthru 即可,是否有危险不知道,自己掂量,禁用好像也不影响一些功能,另外顺便把 scandir 函数去掉禁用,不然会出现无非显示目录中文件的情况。

6、给H5ai加密码

首先我们要找到这个文件_h5ai/public/index.php,在最下面增加以下代码:

function mima()
{
        $user=array('填写你的用户名','填写你的密码');

        if(!($user[0]===$_SERVER['PHP_AUTH_USER'] && $user[1]===$_SERVER['PHP_AUTH_PW'])){

          header('WWW-Authenticate: Basic realm="MY Mark"');

          header('HTTP/1.0 401 Unauthorized');

          die("please login");
         }
}

然后在第一行,也就是<?php的下面(也就是第二行)插入以下代码:

mima();

7、目录头部或尾部显示自定义HTML内容

在需要显示自定义 HTML 的情况下,在H5ai目录下添加 _h5ai.headers.html_h5ai.footers.html 另外还支持改成MD_h5ai.headers.md_h5ai.footers.md

8、版权修改

只要修改_h5ai/private/php/pages/index.php就行了,非常简单,建议保留网站右上角的powerby部分!


2.配置文件修改

打开位于_h5ai/private/conf目录下的options.json 文件

1.打包下载:

搜索“download”大概在127行,将enabledfalse改为true

修改情况如下

"download": {
        "enabled": true,
        "type": "php-tar",
        "packageName": null,
        "alwaysVisible": false
    },

2.文件信息及二维码:

搜索“info”大概在185行,将enabledfalse改为true

修改情况如下

"info": {
        "enabled": true,
        "show": true,
        "qrcode": true,
        "qrFill": "#999",
        "qrBack": "#fff"
    },

3.默认简体中文:

搜索“l10n”大概在200行,将enabledfalse改为true,把langen改为zh-cn

修改情况如下

 "l10n": {
        "enabled": true,
        "lang": "zh-cn",
        "useBrowserLang": true
    },

4.文件及文件夹多选:

搜索“select”大概在323行,将enabledfalse 改为true

修改情况如下

"select": {
        "enabled": true,
        "clickndrag": true,
        "checkboxes": true
    },

Ⅲ、注意事项

1.读取不出文件

如果存在文件,但读不出来,可能原因就是php已禁用scandir函数了,请修改php.ini解决。

disable_functions=passthru,exec,system,chroot,scandir,...

删掉scandir,字样,再重启php即可:/etc/init.d/php-fpm restart。

2.文件仍读不出

把h5ai程序_h5ai中privatepublic两个文件夹中的cache目录权限设置为777

3.404报错

检查上面步骤说到的配置文件步骤,如果正确请重启服务器试一试。

Ⅳ、下载链接




魔改版基于DPlayer播放器 来源于第三方魔改版
Last modification:June 17th, 2019 at 10:07 am
If you think my article is useful to you, please feel free to appreciate

Leave a Comment

4 comments

  1. emmm...偶然发现的一个blog...挺有趣的
    H5ai这个没有接触过...有什么demo吗...一般都是当网盘用的吗?

    1. Rintarou°
      @飒

      https://larsjung.de/h5ai/demo 感觉大部分人都是拿来当私人网盘用的吧

  2. Neworld

    博主反馈一下:您的“6、给H5ai加密码”板块,代码部分少了两个"}}"
    请求转载一下该文章,可以吗?

    1. Rintarou°
      @Neworld

      谢谢,没问题喔。

召唤看板娘