最近挑选服务器目录共享的引擎,在诸如Seafile、ownCloud、FileRun、Directory Lister、h5ai之间几经挑选。因为没有文件web上传需求,也没有多用户需求,仅仅是自己做个路径web浏览而已。
因此最终选择了美观轻量的h5ai;同时为了控制访问权限,选择了较为轻量的Apache Basic身份验证。
实验环境
- Ubuntu 20.04
- /mnt/download为需要在web展示的路径
实验步骤
一、更新apt源、安装所需软件
| $ sudo apt update && sudo apt install apache2 php php-gd imagemagick zip ffmpeg
|
二、下载h5ai
| $ sudo wget https://release.larsjung.de/h5ai/h5ai-0.29.2.zip && sudo tar -xzvf v0.29.2.tar.gz $ sudo mv h5ai-0.29.2/src/_h5ai/ /mnt/download/ $ sudo chown -R www-data:www-data /mnt/download/_h5ai/
|
三、调整配置文件
| $ sudo vi /etc/php/7.*/apache2/php.ini
|
- 将上面配置文件的disable_functions选项中去掉pcntl_exec
| $ sudo vi /etc/apache2/sites-available/000-default.conf
|
| <VirtualHost *:80> DirectoryIndex /_h5ai/public/index.php <Directory "/mnt/download/"> AuthType Basic AuthName "Restricted Content" AuthUserFile /mnt/download/.htpasswd Require valid-user </Directory> </VirtualHost>
|
如果要想启用https链接,则要改成如下配置同时使用命令sudo a2enmod ssl开启apache2的ssl加密功能,同时修改配置文件中的服务器名称和key路径。
| <IfModule mod_ssl.c> <VirtualHost> DirectoryIndex /_h5ai/public/index.php <Directory "/mnt/download/"> AuthType Basic AuthName "Restricted Content" AuthUserFile /mnt/download/.htpasswd Require valid-user </Directory>
ServerName Your.Domain.Name SSLCertificateFile key.crt SSLCertificateKeyFile key.key </VirtualHost> </IfModule>
|
四、创建密码文件
| $ sudo htpasswd -cm /mnt/download/.htpasswd User1
|
五、启动服务并检查插件状态
| $ sudo systemctl restart apache2
|
服务启动后访问管理界面,查看插件是否均正常运行。
管理界面默认密码为空,需要更改默认密码可以在服务器*_h5ai/private/conf/options.json*中更改。
常见故障