在群晖 Web Station 上搭建 h5ai 下载站点 2022/01/25 13:22 • NAS • 阅读 11948 h5ai 是一款 php 目录列表程序,适合用来搭建一个简单公开的下载站,支持在线预览 .jpg、.md、.mp4 等多种格式。 官方 Demo 演示页面:https://larsjung.de/h5ai/demo/ 提示:本站已更新使用 Container Manager 套件(原 Docker 套件)搭建 h5ai 的教程,您可以前往 https://blog.kobin.cn/blog/network/n4/3035.html 进行查看。 操作步骤 1、登录群晖 DSM 系统,在套件中心安装「Web Station」。 2、前往「控制面板」>「文件共享」>「共享文件夹」,新建一个共享文件夹。 3、文件夹权限页面,将「http」群组设置为「只读」权限。 4、前往官网 https://larsjung.de/h5ai/ 下载最新的稳定版程序。 5、下载完成后,将程序上传到 NAS 刚才新建的文件夹中,并进行解压。 6、打开 WebStation,新建一台虚拟主机,设置 HTTP 端口和站点根目录。 7、分别把 h5ai 文件夹下的「private」和「public」两个子文件夹,将「http」群组设置为「读写」权限。 8、打开浏览器,访问 http://192.168.1.100:9000/_h5ai/public/index.php ,将链接中的 IP 地址替换为本地 NAS 服务器的 IP 地址,初始密码为空。 9、登录后可以看到 h5ai 的后台检查页面,从这里可以检查支持格式的情况,以及图片、视频、PDF 在线预览的相关状态。 10、前往「控制面板」>「应用程序」>「终端和 SNMP」,启动 SSH 功能,并设置 SSH 端口。 11、前往 https://www.putty.org/ 下载 PuTTY 远程连接工具,通过这个工具可以登录到 NAS 的控制台。 12、打开 PuTTY 远程工具,IP 地址为本地 NAS 服务器的 IP 地址,端口为刚才设置的 SSH 端口,输入完成后点击连接。 13、输入 NAS 服务器的管理员账户名和密码,依次执行以下命令。 更新:DSM 7.2 及后续系统版本,nginx 的配置文件路径更改为 /usr/local/etc/nginx/sites-enabled/webservice_portal_****** ,并且每次重启服务后,配置文件内容将被重置。 # 获取 root 权限 sudo -i # 查看虚拟主机的配置文件夹名称 ls /usr/local/etc/nginx/conf.d/ # 修改配置文件,此处将 ****** 替换为自己的文件夹名称 echo -e "index index.html index.htm index.php /_h5ai/public/index.php;" > /usr/local/etc/nginx/conf.d/******/user.conf.h5ai # 重启 nginx 服务 sudo nginx -s reload 14、这时候访问 http://192.168.1.100:9000/ 就可以正常显示页面了。 本文为原创文章,著作权归作者所有:来自「KOBIN 技术随笔」作者的原创作品,转载请标明出处。在群晖 Web Station 上搭建 h5ai 下载站点https://blog.kobin.cn/blog/network/n4/1555.html NAS群晖 赞 (4) 0 21 生成海报 发表回复 您的电子邮箱地址不会被公开。 必填项已用 * 标注*昵称: *邮箱: 网址: 记住昵称、邮箱和网址,下次评论免输入 提交 CAPTCHAis initialing... 评论列表(21条) 哈哈 2022/10/27 21:13 中文目录好像不行,按网上的方法修改之后,能显示中文目录,但是点进去就访问不了。有解决办法没? 回复 KOBIN 2022/10/28 10:04 @哈哈:我这边测试用初始配置文件的环境下,没有遇到你所述的情况,中文目录可以正常访问 回复 时光 2024/01/22 07:39 @KOBIN:DSM7.2,每次重启会失效,要重新执行第13步,我用的是VI 命令去编辑的,编辑完之后 wq! 强制保存了 回复 onlys 2023/02/27 11:36 按照步骤配置完毕后,http://192.168.0.62:9000/_h5ai/public/index.php能正常打开,但是不能进入http://192.168.0.62:9000/页面,报错403。不知道是哪儿的问题 回复 onlys 2023/02/27 11:45 @onlys:已经搞定了,最后一步没弄对。另外想问下楼主,如何屏蔽掉@eadir文件夹 回复 KOBIN 2023/02/27 12:35 @onlys:修改 \_h5ai\private\conf\options.json 配置文件,找到 view 项目下的 hidden,把文件夹名称加进去就行了 回复 onlys 2023/06/26 11:08 群晖升级到7.2之后,之前部署的失效了,重新部署卡又卡到最后一步了。ls /usr/local/etc/nginx/conf.d/ 没看到相关服务的配置文件。求楼主指点迷津。 回复 KOBIN 2023/06/26 11:44 @onlys:DSM 7.2 以上版本的 WebStation 配置文件移动到了 /usr/local/etc/nginx/sites-enabled/webservice_portal_e3e39f8b-345c-406a-95a0-284d018cbcb2,修改下对应的文件就可以了,只是换了个路径,其他信息不变 回复 algaemb 2023/08/18 11:48 -ash: /usr/local/etc/nginx/sites-enabled/webservice_portal_19da2a49-e605-49af-8a71-428754a5bb39/user.conf.h5ai: Not a directory 这个报错如何处理。。。 回复 挖土的兔子 2023/08/19 15:30 能不能在DSM 7.2 及后续系统版本环境下重新写一份教程,目前按照此教程无法配置,非常感谢~! 回复 takikoma 2023/08/21 23:34 @挖土的兔子:看我下面的回复 回复 takikoma 2023/08/21 23:33 记录下我升级7.2以后得解决方式: cat /usr/local/etc/nginx/sites-enabled/webservice_portal_97a2244b-cb49-47e0-9cb7-d376c0bda4cc 看最后一行的内容,我的是: include conf.d/.service.97a2244b-cb49-47e0-9cb7-d376c0bda4cc.d7b3102e-8cb8-4c27-b706-3180c354c367.conf*; 然后: cat /usr/local/etc/nginx/conf.d/.service.97a2244b-cb49-47e0-9cb7-d376c0bda4cc.d7b3102e-8cb8-4c27-b706-3180c354c367.conf 看最后一行的内容,我的是: include /usr/local/etc/nginx/conf.d/d7b3102e-8cb8-4c27-b706-3180c354c367/user.conf*; 然后手工创建这个目录: mkdir /usr/local/etc/nginx/conf.d/d7b3102e-8cb8-4c27-b706-3180c354c367 手工创建这个文件: touch /usr/local/etc/nginx/conf.d/d7b3102e-8cb8-4c27-b706-3180c354c367/user.conf.h5ai 最后原来的配方: echo -e “index index.html index.htm index.php /_h5ai/public/index.php;” > /usr/local/etc/nginx/conf.d/d7b3102e-8cb8-4c27-b706-3180c354c367/user.conf.h5ai sudo nginx -s reload 回复 挖土的兔子 2023/08/22 10:09 @takikoma:麻烦再看下我出现的问题,是不是在配置Web Station的时候配置的步骤不对?Web Station–创建网页服务—本机脚本语言网站 回复 挖土的兔子 2023/08/22 10:23 @挖土的兔子:我下面的运行命令有错误,解决方式没问题,谢谢! 回复 takikoma 2023/08/22 21:34 @挖土的兔子:我是7.2以前的系统运行正常的h5ai,升级到7.2以后出问题了,这么解决的。你是不是全新安装的,感觉情况不太一样。 另外我是DSM 7.2,你如果不是这个7.2版本就不是这些文件,比如7.1,就从这里开始看:/usr/local/etc/nginx/sites-enabled/server.webstation-vhost.conf 回复 wuxin 2023/09/21 14:43 @takikoma:该方案可行,已经成功,感谢~~ 回复 挖土的兔子 2023/08/22 10:05 第一步: cat /usr/local/etc/nginx/sites-enabled/webservice_portal_1aea5a29-9361-4e85-a6e5-e9d4aa426084 结果没问题 include conf.d/.service.1aea5a29-9361-4e85-a6e5-e9d4aa426084.44e4c59b-1711-4279-af3f-f29c2f5b5180.conf*; 但是第二步,目录下没有此文件 root@SynologyDS1621:~# ls /usr/local/etc/nginx/conf.d alias.syno-app-portal.SurveillanceStation.conf dsm.syno-app-portal.SurveillanceStation.conf alias.syno-app-portal.SynologyPhotos.conf dsm.syno-app-portal.SynologyDrive.conf dsm.pkg-static.ContainerManager-70163528.conf dsm.syno-app-portal.SynologyPhotos.conf dsm.pkg-static.SynologyApplicationService-1255611987.conf dsm.syno-app-portal.VideoStation.conf dsm.pkg-static.SynologyDrive-1350404196.conf dsm.syno-app-portal.Virtualization.conf dsm.ssdp.conf dsm.synorelayd.conf dsm.syno-app-portal.AudioStation.conf events.origin.conf dsm.syno-app-portal.Calendar.conf main.origin.conf dsm.syno-app-portal.DownloadStation.conf ssl.compress.conf dsm.syno-app-portal.FileStation.conf http://www.pkg-static.Calendar-464751258.conf dsm.syno-app-portal.NoteStation.conf x-accel.pkg-static.VideoStation-3300082696.conf 第三步运行失败了 cat /usr/local/etc/nginx/conf.d/conf.d/.service.1aea5a29-9361-4e85-a6e5-e9d4aa426084.44e4c59b-1711-4279-af3f-f29c2f5b5180.conf* cat: ‘/usr/local/etc/nginx/conf.d/conf.d/.service.1aea5a29-9361-4e85-a6e5-e9d4aa426084.44e4c59b-1711-4279-af3f-f29c2f5b5180.conf*’: No such file or directory 回复 Wind 2023/11/13 22:19 请问搭建完怎么添加目录呀 回复 KOBIN 2023/11/15 17:43 @Wind:第 6 步的时候会设置一个站点根目录,通过 FileStation,在这个目录上新建就好了 回复 Tk 2023/11/30 23:12 楼主能否帮忙远程设置一下,升级7.2后失效了,我又把文件和网站门户删了,重新设置了一遍,还是报403折腾好久了… 回复 时光 2024/01/22 07:37 @Tk:DSM7.2,每次重启会失效,要重新执行第13步,我用的是VI 命令去编辑的,编辑完之后 wq! 强制保存了 回复