Linux系统之部署h5ai目录列表程序

Linux系统之部署h5ai目录列表程序

  • 一、h5ai介绍
    • 1.1 h5ai简介
    • 1.2 h5ai特点
  • 二、本地环境介绍
    • 2.1 本地环境规划
    • 2.2 本次实践介绍
  • 三、检查本地环境
    • 3.1 检查本地操作系统版本
    • 3.2 检查系统内核版本
  • 四、安装httpd软件
    • 4.1 检查yum仓库
    • 4.2 安装httpd软件
    • 4.3 启动httpd服务
    • 4.4 查看httpd服务
    • 4.5 防火墙和selinux设置
    • 4.6 浏览器测试web服务
  • 五、安装PHP
    • 5.1 卸载旧版本PHP
    • 5.2 安装remi镜像源
    • 5.3 安装php7.4版本
    • 5.4 查看php版本
  • 六、安装h5ai
    • 6.1 下载h5ai软件包
    • 6.2 解压h5ai软件包
    • 6.3 复制目录
    • 6.4 修改httpd配置文件
    • 6.5 重启httpd服务
  • 七、安装h5ai相关插件
    • 7.1 初始访问h5ai
    • 7.2 安装初始插件
    • 7.3 重新检测功能模块
  • 八、测试网站效果
    • 8.1 访问h5ai首页
    • 8.2 新建网站目录
    • 8.3 查看网站目录
    • 8.4 查看目录内容

一、h5ai介绍

1.1 h5ai简介

h5ai 是用于 HTTP Web 服务器的现代文件索引器,专注于您的文件。目录以吸引人的方式显示,浏览它们通过不同的视图、面包屑和树概述得到增强。最初h5ai是HTML5 Apache Index的首字母缩写,但现在它也支持其他Web服务器。

1.2 h5ai特点

有许多可用的扩展和配置选项,允许用户自定义目录列表的Web外观。所有标记均为有效的HTML5,并附带有CSS3和最佳的JavaScript,这些可以用来构建新鲜且注重用户体验的文件视图。

一些可选功能包括:

  • 文件排序

  • 不同的视图模式

  • 本地化

  • 痕迹导航

  • 树视图

  • 自定义页眉和页脚

  • 文件过滤器和搜索

  • 文件夹大小

  • 自动刷新

  • 打包下载

  • 二维码

  • 缩略图

  • 文件预览

二、本地环境介绍

2.1 本地环境规划

本次实践为个人测试环境,操作系统版本为centos7.6。

hostname本地P地址操作系统版本内核版本node版本
jeven192.168.3.166centos 7.63.10.0-957.el7.x86_64v16.17.0

2.2 本次实践介绍

1.本次实践部署环境为个人测试环境;
2.在centos7.6环境下部署h5ai文件展示页。

三、检查本地环境

3.1 检查本地操作系统版本

检查本地操作系统版本

[root@jeven ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

3.2 检查系统内核版本

检查系统内核版本

[root@jeven ~]# uname -r
3.10.0-957.el7.x86_64

四、安装httpd软件

4.1 检查yum仓库

如果没有镜像源,可以使用阿里云的镜像源。

curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo

检查yum仓库状态,确保各镜像源正常。

[root@jeven ~]# yum repolist enabled
Loaded plugins: fastestmirror, langpacks
Determining fastest mirrors* epel: cdn.centos.no
repo id                                                                 repo name                                                                            status
!base/7/x86_64                                                          CentOS-7 - Base - mirrors.aliyun.com                                                 10,072
!epel/x86_64                                                            Extra Packages for Enterprise Linux 7 - x86_64                                       13,768
!extras/7/x86_64                                                        CentOS-7 - Extras - mirrors.aliyun.com                                                  518
!mysql-connectors-community/x86_64                                      MySQL Connectors Community                                                              227
!mysql-tools-community/x86_64                                           MySQL Tools Community                                                                   100
!mysql57-community/x86_64                                               MySQL 5.7 Community Server                                                              678
!updates/7/x86_64                                                       CentOS-7 - Updates - mirrors.aliyun.com                                               5,287
repolist: 30,650

4.2 安装httpd软件

直接使用yum安装httpd软件。

yum -y install  httpd

在这里插入图片描述

4.3 启动httpd服务

启动httpd服务,并使开机自启。

systemctl start httpd
systemctl enable  httpd

4.4 查看httpd服务

查看httpd服务,确保httpd服务正常。

[root@jeven ~]# systemctl status httpd
● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)Active: active (running) since Sat 2023-10-07 20:28:35 CST; 8s agoDocs: man:httpd(8)man:apachectl(8)Main PID: 59236 (httpd)Status: "Processing requests..."CGroup: /system.slice/httpd.service├─59236 /usr/sbin/httpd -DFOREGROUND├─59237 /usr/sbin/httpd -DFOREGROUND├─59238 /usr/sbin/httpd -DFOREGROUND├─59239 /usr/sbin/httpd -DFOREGROUND├─59240 /usr/sbin/httpd -DFOREGROUND└─59241 /usr/sbin/httpd -DFOREGROUNDOct 07 20:28:35 jeven systemd[1]: Starting The Apache HTTP Server...
Oct 07 20:28:35 jeven systemd[1]: Started The Apache HTTP Server.

4.5 防火墙和selinux设置

  • 设置selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0
  • 关闭防火墙,如果想要开启防火墙,需放行80端口。
systemctl stop firewalld && systemctl disable firewalld

4.6 浏览器测试web服务

浏览器打开:http://192.168.3.166,将IP替换为自己服务器IP地址。

在这里插入图片描述

五、安装PHP

5.1 卸载旧版本PHP

卸载旧版本的php,防止与新装的php7.4版本冲突。

yum remove -y php* 

5.2 安装remi镜像源

使用以下命令,安装remi镜像源。

 yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

在这里插入图片描述

5.3 安装php7.4版本

接yum安装php7.4版本及其模块组件。

yum install -y --showduplicate --enablerepo=remi --enablerepo=remi-php74   php-fpm php  php-cli  php-bcmathphp-gd  php-json  php-mbstring  php-mcrypt  php-mysqlnd php-opcache  php-pdo  php-pecl-crypto  php-pecl-mcrypt php-pecl-geoip php-recode php-snmp  php-soap  php-xml  php-pecl-zip

在这里插入图片描述

5.4 查看php版本

查看当前的php版本

[root@jeven ~]# php -v
PHP 7.4.33 (cli) (built: Aug  1 2023 09:00:17) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologieswith Zend OPcache v7.4.33, Copyright (c), by Zend Technologies

六、安装h5ai

6.1 下载h5ai软件包

创建下载目录

mkdir -p /data/h5ai/ && cd /data/h5ai/

下载h5ai软件包

wget --no-check-certificate https://release.larsjung.de/h5ai/h5ai-0.30.0.zip 

在这里插入图片描述

6.2 解压h5ai软件包

解压h5ai软件包

unzip h5ai-0.30.0.zip

在这里插入图片描述

6.3 复制目录

将_h5ai目录复制到/var/www/html下

 cp -a _h5ai/ /var/www/html/

将目录授权

 chown -R apache:apache /var/www/html/

6.4 修改httpd配置文件

备份httpd配置文件

cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak

修改httpd配置文件,在/etc/httpd/conf/httpd.conf文件中的模块添加以下内容:

index.php /_h5ai/public/index.php 

6.5 重启httpd服务

重启httpd服务与 php-fpm并设置开机自启

systemctl start php-fpm httpd  && systemctl enable php-fpm httpd 

七、安装h5ai相关插件

7.1 初始访问h5ai

访问地址:http://IP地址/_h5ai/public/index.php

在这里插入图片描述

当前密码为空,登录即可看到所有模块自检结果。

在这里插入图片描述

7.2 安装初始插件

  • 安装PDF thumbs功能
yum install -y ImageMagick 

在这里插入图片描述

  • 安装视频插件
rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
yum install ffmpeg ffmpeg-devel -y 

在这里插入图片描述

  • 安装php-gd扩展
yum install -y --showduplicate --enablerepo=remi --enablerepo=remi-php74  php-common php-devel php-gd
  • 重启 php-fpm与httpd服务
systemctl restart  php-fpm httpd

7.3 重新检测功能模块

刷新页面,可以看到所有功能模块都已经正常。

在这里插入图片描述

八、测试网站效果

8.1 访问h5ai首页

访问地址:http://192.168.3.166/,将IP替换为自己服务器IP地址。

在这里插入图片描述

8.2 新建网站目录

在网站根目录/var/www/html,新建以下目录。

mkdir {movie,image,pdf,file}

上传文件到对应目录,目录内容如下:

[root@jeven html]# tree -L 2 ./
./
├── file
│   └── \344\272\221\350\256\241\347\256\227.docx
├── _h5ai
│   ├── CHANGELOG.md
│   ├── private
│   ├── public
│   └── README.md
├── image
│   └── \344\270\255\347\247\213\345\233\276\347\211\207.jpg
├── index.php
├── movie
│   ├── 694448a4-cf6a-4105-8694-f5f8da384e2c_SD.mp4
│   └── \346\210\221\346\234\200\351\227\252\344\272\256\ .mp3
└── pdf└── \344\272\221\350\256\241\347\256\227\344\273\213\347\273\215.pdf7 directories, 8 files

8.3 查看网站目录

刷新网页,可以看到新建的目录。

在这里插入图片描述

8.4 查看目录内容

测试目录中各种格式文件:

  • 测试pdf文件,可以正常在线打开。

在这里插入图片描述
在这里插入图片描述

  • 测试图片文件,可以正常在线打开。

在这里插入图片描述
在这里插入图片描述

  • 测试MP4视频文件,可以正常播放。

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/150880.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python_PyQtGraph 学习笔记(八)】基于PyQtGraph将X轴坐标设置为系统时间

【Python_PyQtGraph 学习笔记(八)】基于PyQtGraph将X轴坐标设置为系统时间 前言正文1、获取plotItem的bottom轴对象2、设置刻度值,即获取时间3、刻度值与显示数值绑定4、设置bottom轴的刻度数值显示前言 基于PySide2、PyQtGraph和PySide2动态绘图,将X轴坐标设置为系统事件…

安全防御—密码学

1. 什么是APT? APT(Advanced Persistent Threat)是指高级持续性威胁,本质是针对性攻击。 利用先进的攻击手段对特定目标进行长期持续性网络攻击的攻击形式,APT攻击的原理相对于其他攻击形式更为高级和先进,…

[UUCTF 2022 新生赛]ezpop - 反序列化+字符串逃逸【***】

[UUCTF 2022 新生赛]ezpop 一、解题过程二、其他WP三、总结反思 一、解题过程 题目代码&#xff1a; <?php //flag in flag.php error_reporting(0); class UUCTF{public $name,$key,$basedata,$ob;function __construct($str){$this->name$str;}function __wakeup(){i…

嵌入式处理趋势,第一部分:超集成MCU

当今的嵌入式微控制器&#xff08;MCU&#xff09;是协同和创新的惊人例子。单个芯片上可容纳30,000至2百万个门&#xff0c;直到最近&#xff0c;各种集成的组件和模块都被视为独立的高级IC。 例如&#xff0c;当前典型的MCU设备&#xff08;下面的图1&#xff09;可能包含以…

什么是Spring

一、前言 参与java项目开发的工作&#xff0c;没有人可以离开Spring&#xff0c;但是什么是Spring呢&#xff1f;我们平时可以说对于这个概念早已经是熟视无睹。今天我还特意查看了官网的介绍&#xff0c;但是上面竟然没有说明Spring是什么&#xff0c;之说了Spring的特征和能…

chromium线程模型(1)-普通线程实现(ui和io线程)

通过chromium 官方文档&#xff0c;线程和任务一节我们可以知道 &#xff0c;chromium有两类线程&#xff0c;一类是普通线程&#xff0c;最典型的就是io线程和ui线程。 另一类是 线程池线程。 今天我们先分析普通线程的实现&#xff0c;下一篇文章分析线程池的实现。&#xff…

0基础学习VR全景平台篇 第105篇:调色原理和色彩分析

“我心藏瑰宝灿烂如歌&#xff0c;唯有画作可为我吟唱。” 绘画、摄影、音乐等一切艺术&#xff0c;皆如是&#xff0c;敬梵高。 本节教程邀请李小岩老师讲授&#xff0c;大家欢迎&#xff01; 大家好&#xff01;欢迎收看我们这一节的课程&#xff0c;我们这一节呢主要讲的是…

南美巴西市场最全分析开发攻略,收藏一篇就够了

巴西位于南美洲东部&#xff0c;是南美洲资源最丰富&#xff0c;经济活力和经济实力最强的国家。巴西作为拉丁美洲的出口大国&#xff0c;一直是一个比较有潜力的市场&#xff0c;亦是我国外贸公司和独立外贸人集群的地方。中国长期是巴西主要的合作伙伴&#xff0c;2022年占巴…

解决:使用WileyNJDv5_Template模板时,无法生成pdf文件。

目录 问题&#xff1a; 解决办法&#xff1a; 检查过程&#xff1a; WileyNJDv5-Template模板链接&#xff1a;New Journal Design LaTeX template (wiley.com) 问题&#xff1a; 使用wileyNJDv5_Template模板时候&#xff0c;无法生成pdf文件。无论是使用texlivetexmaker还…

蓝桥杯 字符串和日期

有一个类型的题目是找到输出图形的规律&#xff0c;然后将其实现。观察下面的图形。你想想你该怎么输出这个图形呢? ABBB#include<stdio.h> int main(){printf(" A\n");printf("BBB\n");return 0; }那么&#xff0c;对于如下的图形&#xff1a; ABB…

【动手学深度学习】课程笔记 00-03 深度学习介绍及环境配置

目录 00-01 课程安排 02 深度学习介绍 深度学习实际应用的流程 完整的故事 03 环境配置 00-01 课程安排 1. 学习了这门课&#xff0c;你将收获什么&#xff1f; 深度学习的经典和最新模型&#xff1a;LeNet&#xff0c;ResNet&#xff0c;LSTM&#xff0c;BERT&#xff1…

Covert Communication 与选择波束(毫米波,大规模MIMO,可重构全息表面)

Covert Communication for Spatially Sparse mmWave Massive MIMO Channels 2023 TOC abstract 隐蔽通信&#xff0c;也称为低检测概率通信&#xff0c;旨在为合法用户提供可靠的通信&#xff0c;并防止任何其他用户检测到合法通信的发生。出于下一代通信系统安全链路的强烈…

java 汽车修理厂修配厂-接单-处理收款 日常经营管理系统 汽车修理信息管理

实现修配厂一体化管理&#xff0c;从业务各个环节整体管理&#xff0c;包括接待&#xff0c;维修&#xff0c;采购&#xff0c;质检&#xff0c;交车&#xff0c;收款等业务操作环节&#xff0c;全方位&#xff0c;闭环管理&#xff0c;精细化管理。充费利用信息技术资源&#…

基于虚拟同步发电机的孤岛逆变器控制策略(孤岛VSG)(Simulink仿真实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

python入门篇07-数据容器(序列 集合 字典,json初识)基础(下)

全文目录,一步到位 1.前言简介1.1 专栏传送门1.1.1 上文传送门 2. python基础使用2.1 序列2.1.1 序列定义2.1.2 序列参数解释2.1.3 列表list切片2.1.4 元组tuple切片2.1.5 字符串str切片 2.2 集合定义2.2.1 set集合-基本语法2.2.2 set集合-添加元素.add()2.2.3 set集合- 移除元…

51单片机+EC11编码器实现可调参菜单+OLED屏幕显示

51单片机+EC11编码器实现可调参菜单+OLED屏幕显示 📍相关篇《stc单片机使用外部中断+EC11编码器实现计数功能》 🎈《STC单片机+EC11编码器实现调节PWM输出占空比》 🌼实际操作效果 🍁整个项目实现框架: 📓EC11接线原理图: 📓项目工程简介 📝仅凭借一个EC11编…

小谈设计模式(23)—桥接模式

小谈设计模式&#xff08;23&#xff09;—桥接模式 专栏介绍专栏地址专栏介绍 桥接模式主要角色抽象部分实现部分分析 核心思想应用场景123 优缺点分析优点123 缺点12 总结 专栏介绍 专栏地址 link 专栏介绍 主要对目前市面上常见的23种设计模式进行逐一分析和总结&#x…

tcpdump(二)命令行参数讲解(一)

一 tcpdump实战详解 1、我们做抓包,一般都需要指定条件,保证对系统的CPU、内存、磁盘资源不会产生过大的响应备注&#xff1a; 遇到过tcpdump持续抓包导致系统挂了2、条件&#xff1a;1) tcpdump的 基础命令选项参数2) 真正的 过滤条件 ① 参数学习思路 思路&#xff1a;…

32、Flink table api和SQL 之用户自定义 Sources Sinks实现及详细示例

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…

使用Spring Initailizr功能~

Spring Initializr是一个用于快速生成Spring Boot项目的在线工具&#xff0c;它允许用户选择所需的Spring Boot版本、添加所需的依赖&#xff0c;并生成一个可用的项目结构&#xff0c;包括基本的配置文件和代码框架&#xff0c;它能够简化Spring Boot项目的初始化过程&#xf…