Mark

宝塔Nginx环境搭建H5ai程序及注意事项
1、前言 技术博真是个累脑子的差事,今晚一个网友问我宝塔环境下如何搭建H5ai,发现网上还没有这方面详细的教程有的...
扫描右侧二维码阅读全文
04
2018/06

宝塔Nginx环境搭建H5ai程序及注意事项

1、前言

技术博真是个累脑子的差事,今晚一个网友问我宝塔环境下如何搭建H5ai,发现网上还没有这方面详细的教程有的也是很模糊,此篇将介绍一下搭建过程中的一些注意事项。


2、什么是H5ai

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


3、环境要求

PHP 5.5+
PHP的Scandir函数需要开放


4、安装教程

1、搭建PHP网站环境
Lamp一键包或者AMH、Vestacp、宝塔等面板程序搭建,我们今天主要讲解宝塔环境的搭建。

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

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

3、修改配置文件
宝塔首页左边的网站 -> 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;
    ...

4、搭建完成
把你需要列的文件及目录放在_h5ai同目录下即可


5、高级教程

1、查看全部功能开放情况
访问你的域名xxxx.com/_h5ai/public/index.php(初始密码为空)
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.headers.html 或 _h5ai.footers.html 另外还支持MD改成_h5ai.headers.md 或 _h5ai.footers.md
8、版权修改
只要修改_h5ai/private/php/pages/index.php就行了,非常简单,另外强烈建议保留网站右上角的powerby部分!


6、注意事项

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

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

删掉scandir,字样,再重启php即可:/etc/init.d/php-fpm restart。
2、文件还读不出
把h5ai程序_h5ai中private和public两个文件夹中的cache目录权限设置为777。
3、404报错
检查上面步骤说到的配置文件步骤,如果正确请重启服务器试一试。


7、相关链接




魔改版基于DPlayer播放器 来源于h5ai HTML5播放器(DPlayer)版
Last modification:June 7th, 2018 at 11:26 pm
If you think my article is useful to you, please feel free to appreciate

9 comments

  1. vapaus   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 67.0.3396.99(Google Chrome 67.0.3396.99)

    总算OK了

    1. Mark   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 67.0.3396.99(Google Chrome 67.0.3396.99)
      @vapaus

      解决问题就好

  2. 仙界   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 67.0.3396.87(Google Chrome 67.0.3396.87)

    带走

    1. Mark   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 67.0.3396.87(Google Chrome 67.0.3396.87)
      @仙界

      走了,走了就别回来了

  3. 仙界   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.186(Google Chrome 64.0.3282.186)

    没有服务器来搭!

    1. Mark   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 66.0.3359.181(Google Chrome 66.0.3359.181)
      @仙界

      等会哥给你黑机器去

      1. 仙界   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.186(Google Chrome 64.0.3282.186)
        @Mark

        不用黑,你给我你的就行

  4. 光芒   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 67.0.3396.62(Google Chrome 67.0.3396.62)

    完美 搭建成功(๑•̀ㅁ•́ฅ)

    1. Mark   Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 66.0.3359.181(Google Chrome 66.0.3359.181)
      @光芒

      能帮到你很开心,常来坐坐

Leave a Comment