h5ai 是一个基于 PHP 的 Web 文件服务器,支持多种目录视图、自定义页眉页脚、文本图像和音视频文件的预览等,而且这些功能可以根据需求来配置。

h5ai 为 HTML5 Apache Index 的缩写,最初只支持 Apache httpd,目前已经支持其他服务器,如 lighttpd、nginx 等。

安装

  1. 去 h5ai 官网下载最新版本
  2. 在群晖管理界面中打开 启动 Web Station 功能
  3. 上传下载好的文件到 web 目录
  4. 用群晖自带的解压功能解压文件

此时的目录:

Web
 └─ _h5ai
    ├─ private
    ├─ public
    ├─ .htaccess
    ├─ CHANGELOG.md
    └─ README.md
  1. 访问 Your-IP/_h5ai/public/index.php 查看 h5ai 配置是否正常(默认无密码)

其中红色的有:

  • PHP arch
    • PHP 非64位导致
  • Cache directory
    • 这两个为目录权限问题
    • 赋予 httpd 读写权限后解决
  • Movie thumbs
    • 视频预览
  • Shell zip
    • zip 预览

配置

  • 在群晖控制面板中启用 SSH 功能,然后用 SSH 连接到群晖(帐号为 root ,密码和 admin 相同)
# 打开 httpd.conf-user 文件
$ vi /etc/httpd/conf/httpd.conf-user

# 找到 DirectoryIndex
# 在后面新增 /_h5ai/public/index.php
# 完成后
DirectoryIndex /_h5ai/public/index.php index.html index.htm index.cgi index.php index.php5

# 重启 apache
$ /sbin/initctl restart httpd-user
  • 现在打开浏览器上输入你的IP试试

优化和使用

需要修改 options.json 文件,目录为 _h5ai/private/conf/options.json

修改默认语言为中文

//修改语言为中文
"lang": "zh-cn",

修改 Google 字体镜像

// 找到 fonts.googleapis.com,替换为 fonts.fengqi.me
// 完成后
"//fonts.fengqi.me/css?family=Ubuntu:300,400,700%7CUbuntu+Mono:400,700"

增加页眉或页脚

在需要页眉或页脚的同级目录下增加文件

  • 只在当前目录显示
    • 页眉:_h5ai.header.md
    • 页脚:_h5ai.footer.md
  • 在当前及子目录显示
    • 页眉:_h5ai.headers.md
    • 页脚:_h5ai.footers.md

其他

  • 最新版本默认关闭大部分功能,可以修改 options.json 文件对应的项开启
  • 如果有其它文件或文件夹在 web 目录不想显示,把 http 权限删除

存在的问题

  1. PHP 非 64位,导致无法正常显示大于 2G 文件的大小
  2. h5ai 放在二级目录下时,访问空白

信息

版本

  • h5ai 版本:h5ai-0.29.0
  • 群晖版本:DSM 5.2-5997 Update 2

参考