h5ai搭建(centos7&phpstudy)

h5ai是一个现代的文件索引器,用于HTTP web服务器,重点放在您的文件上。目录以一种吸引人的方式显示,不同的视图、导航和树概览增强了浏览它们的能力。最初h5ai是HTML5 Apache索引的缩写,但现在它也支持其他web服务器。
有很多可选的扩展和配置选项可以自定义目录列表的web外观。所有的标记都是有效的HTML5,加上CSS3和最优秀的JavaScript,以构建一个新鲜但最小的用户界面和一个关注于您的文件的用户体验。
一些可选功能包括:文件排序、不同视图模式、本地化、面包屑、树状视图、自定义页眉和页脚、文件筛选和搜索、文件夹大小、自动刷新、打包下载、二维码、缩略图、文件预览。

环境

centos7

  1. 安装迷你版
  2. 关闭selinux、firewalld、NetworkManager
  3. 安装vim和wget
  4. 镜像源修改为国内的镜像源,且安装epel,除此之外,额外添加yum源如下:
[ffmpeg]
name=ffmpeg
baseurl=http://mirror.bjtu.edu.cn/rpmfusion/free/el/updates/7/x86_64/
enable=1
gpgcheck=0
  1. 添加第2块硬盘,大小为200G,用来存放分享的内容

phpstudy

  1. 修改用户名、密码、别名、登陆授权码为P12345,端口为12345,勾选系统权限
  2. 安装
    1. php7.4.0
    2. nginx_waf1.0、apache_waf1.0、文件安全1.0
    3. 默认已安装:apache2.4.39、nginx1.15、pureftpd1.0.47
  3. 卸载php5.5.38先修改网站的php版本才可以卸载卸载后只剩7个软件

安装

依赖安装

# 1. 系统软件
yum install -y ffmpeg ffmpeg-devel zip unzip ImageMagick

# 2. php扩展
登陆小皮面板之后,软件管理 -- php7.4.0 -- 设置 -- 扩展管理 -- 勾选opcache、exif、fileinfo、gmp、imagick、memcached、zip

下载h5ai并检查环境

cd /www/admin/localhost_80/wwwroot
wget https://release.larsjung.de/h5ai/h5ai-0.30.0.zip
unzip h5ai-0.30.0.zip
rm -rf h5ai-0.30.0.zip
chown www:www _h5ai/
chmod -R 777 _h5ai/

# 环境检查
登陆小皮面板 -- 站点管理 -- 网站目录 -- 设置为/www/admin/localhost_80/wwwroot/_h5ai -- 默认首页设置为/public/index.php

浏览器输入http://192.168.3.110/,无密码,直接login

设置参数

修改文件_h5ai/private/conf/options.json

  1. 设置密码
    1. 首先访问 http://md5hashing.net/hashing/sha512 用于生成sha512密码
    2. 输入密码"P12345"后点击"Calculate hash",计算出hash值后点击"Copy Hash"
    3. 粘贴为passhash的值
  2. 设置默认语言
    在配置文件中搜索l10n找到设置,将en改为zh-cn
"l10n": {
     "enabled": true,
     "lang": "zh-cn",
     "useBrowserLang": true
 }
  1. 开启文件搜索功能
    在配置文件中搜索search,将false改为true
"search": {
     "enabled": true,
     "advanced": true,
     "debounceTime": 300,
     "ignorecase": true
 }
  1. 多文件下载支援设置
    1. 在配置文件中搜索select,将false改为true多选功能
    2. 在配置文件中搜索download,将false改为true,如果需要设置打包文件的格式为zip,而不是默认的tar的话,需要将php-tar改为shell-zip下载功能
"download": {
     "enabled": true,
     "type": "shell-zip",
     "packageName": null,
     "alwaysVisible": false
 }

  1. 二维码下载
    可以通过扫码的方式下载文件,在配置文件中搜索info,将false改为true,这里有2个地方要改
"info": {
     "enabled": true,
     "show": true,
     "qrcode": true,
     "qrFill": "#999",
     "qrBack": "#fff"
 }
  1. 隐藏根目录下文件
    在view的hidden中添加需要隐藏的目录,例如error目录
"view": {
    ......
    "hidden": ["^\\.", "^_h5ai","error"],
    ......
}
  1. 开启过滤器功能
    在配置文件中搜索filter,将false改为true
"filter": {
    "enabled": true,
    "advanced": true,
    "debounceTime": 100,
    "ignorecase": true
}

配置存储

# 1. 格式化新加磁盘
lsblk
parted /dev/sdb
mklabel gpt
mkpart data xfs 0 100%
Ignore
quit
lsblk
mkfs.xfs -f /dev/sdb1

# 2. 挂载新磁盘
mv /www/admin/localhost_80/wwwroot /www/admin/localhost_80/wwwrootbak
mkdir /www/admin/localhost_80/wwwroot
echo "/dev/sdb1 /www/admin/localhost_80/wwwroot xfs defaults 0 0" >>/etc/fstab
mount -a
mv /www/admin/localhost_80/wwwrootbak/* /www/admin/localhost_80/wwwroot 
rm -rf /www/admin/localhost_80/wwwrootbak

访问测试

浏览器输入http://192.168.3.110/