简介
h5ai
是一款功能强大的php
文件目录列表程序,它提供多种文件目录列表呈现方式,支持Apache httpd
, lighttpd
, nginx
等多种web
服务器,支持多国语言(如英语,简体中文等),你可以在线预览txt
,图片,音频,视频等文件格式。
h5ai官网:https://larsjung.de/h5ai/
截图
安装
要求:PHP 5.5+
1、搭建php网站环境
可使用军哥的lnmp
、lamp
一键包或者amh
、vestacp
、宝塔等面板程序搭建。
2、上传h5ai文件到网站根目录h5ai
本地下载地址:h5ai-0.29.0.zip,将文件解压后放在网站根目录。
3、修改配置文件
只需要在配置文件某个地方加上/_h5ai/public/index.php
即可,比如:
Apache httpd 2.2 / 2.4:httpd.conf
DirectoryIndex index.html index.php /_h5ai/public/index.php
lighttpd 1.4:lighttpd.conf
index-file.names += ("index.html", "index.php", "/_h5ai/public/index.php")
nginx 1.2:nginx.conf
index index.html index.php /_h5ai/public/index.php;
最后重启服务器即可!并将要共享的文件均放到根目录(与_h5ai
同一目录下)。
注意
如果存在文件,但读不出来,可能原因就是php
已禁用scandir
函数了,请修改php.ini
解决。
disable_functions=passthru,exec,system,chroot,scandir,...
删掉scandir,
字样,再重启php
即可:/etc/init.d/php-fpm restart
。
原创文章,作者:南猫,如若转载,请注明出处:https://southcat.net/1551/
不妨点个广告再走嘛
相关推荐
-
分享6个免费SSL证书申请网站,给你的网站开启https加密
说明:现在网站上ssl证书已是大势所趋,各大主流网站纷纷都上了ssl,对于我们这些小博客来说,上了ssl可以防止被运营商劫持,还可以增加收录几率。这里分享6个免费的ssl申请地址。1、Let's Encrypt提供免费SSL证书周期为90天,我们需要设置自动或者提前续约才可以继续使用 https://letsencrypt.org/ 2、StartSSL提供3年免费SSL服务,不过StartSSL在火狐浏览器中可能会不信任,不过可以尝试下,说不定就兼容信任了。 https://www.startssl.com/ 3、阿里云Symantec DV SSL免费DV SSL证书,一次申请每个域名1年,每个阿里账户可以签发20张免费证书。单个域名、二级域名,单独申请是分开算的。 https://www.aliyun.com/product/cas 4、西部数码DV SSL证书提供免费一年DV SSL证书 http://www.west.cn/web/ssl/default/index 5、腾讯云DV SSL证书提供免费一年DV SSL证书 https://console.qcloud.com/ssl 6、景安DV SSL证书提供免费一年DV SSL证书,一个账号可以申请3个。 http://www.zzidc.com/main/huodong/freessl.html
-
一个去中心化的视频分享服务平台:PeerTube安装教程
简介 PeerTube是一个视频上传、分享服务平台,这个项目是建立在webtorrent这个项目和ActivityPub协议;架构很灵活,可以支持自建服务器,web版本的bittorrent分发视频,简而言之,就是建立了一个去中心化的,在线版的快播。 每个peertube节点称之为一个Instance。 一个Instance可以提供类似youtube的服务,可以开放用户注册,上传视频。 多个Instance之间通过bittorent共享服务。 用户访问Instance时,多个用户通过webtorrent来交换数据,变身seeds,从而减轻服务器压力,提高车速。 如果只有一个用户观看,Instance自动变成seeds。 支持ActivityPub协议,后续可以搭建去中心化的评论平台之类的。 Github项目地址:https://github.com/Chocobozzz/PeerTube 截图 安装 本教程适用于CentOS、Debian、Ubuntu系统,内存至少为1G,并在Debian 8 X64下完美通过。 1、安装Docker和Docker Compose #安装Docker curl -sSL https://get.docker.com/ | sh service docker start #安装Docker Compose curl -L https://github.com/docker/compose/releases/download/1.17.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose 2、添加虚拟内存如果你的内存足够的大,这步可以跳过。 cd /var/ #获取文件块,count后面参数建议为内存的2倍 dd if=/dev/zero of=swapfile bs=1M count=2048 #创建swap文件 /sbin/mkswap swapfile #激活swap文件 /sbin/swapon swapfile #修改权限 chmod 0644 /var/swapfile #开机自启 echo "/var/swapfile swap swap defaults 0 0" >>/etc/fstab 3、下载PeerTube并配置 git clone https://github.com/Chocobozzz/PeerTube.git 如果提示git不存在的,运行: #Debian/Ubuntu系统 apt-get -y install git #CentOS/RHEL系统 yum -y install git 修改docker-compose.yml文件,并将内部端口9000暴露出来,使其映射到其它外部端口。 cd /root/PeerTube/support/docker/production/ nano docker-compose.yml 编辑文件,将PEERTUBE_HOSTNAME参数后面写成你的域名,并在文件里添加ports代码: #前面的端口随便填 ports: - "8000:9000"...
-
LNMP环境下,利用Nginx反代Google网站的方法
说明:反代的方法有很多,之所以选择lnmp的原因是方便,因为利用Nginx反代网站需要--with-http_sub_module拓展,而军哥的lnmp已经自动添加了,1.4版本的lnmp也可以自动签发SSL证书,不需要我们额外来申请,所以挺方便的,基本只要直接编辑配置文件即可!这里说下方法。 方法 本方法主要以反代Google为主,想反代其它网站的可以照葫芦画瓢,或者参考:利用Nginx反代来简单镜像HTTP(S)网站的方法,照搬配置文件就可以了。 首先得添加域名及自动签发SSL证书。然后编辑域名配置文件/usr/local/nginx/conf/vhost/your.com.conf。 server { listen 443; server_name 你的域名; #为了安全考虑(例如IP被Q),强烈建议使用HTTPS ssl on; ssl_protocols TLSv1.2; ssl_certificate ~/站点证书 ssl_certificate_key ~/站点证书密钥 location / { proxy_pass https://www.google.com; #把返回的302重定向的域名替换成你的。这里关闭 proxy_redirect off; #替换指定字符串 sub_filter www.google.com 你的域名; #字符串只进行一次替换,即只替换第一个被匹配的字符串。这里关闭。 sub_filter_once off; #指定头部: proxy_set_header Host "www.google.com"; proxy_set_header Referer $http_referer; proxy_set_header X-Real-IP $remote_addr; proxy_set_header User-Agent $http_user_agent; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; #防止谷歌返回压缩的内容,因为压缩的内容无法替换字符串 proxy_set_header Accept-Encoding ""; proxy_set_header Accept-Language "zh-CN"; #把cookie的作用域替换成你的域名 proxy_cookie_domain www.google.com 你的域名; #传固定的cookie给谷歌,是为了禁止即时搜索,因为开启即时搜索无法替换内容 proxy_set_header Cookie "PREF=ID=047808f19f6de346:U=0f62f33dd8549d11:FF=2:LD=en-US:NW=1:TM=1325338577:LM=1332142444:GM=1:SG=2:S=rE0SyJh2W1IQ-Maw"; #启用proxy_cache缓存 proxy_cache proxycache; proxy_cache_valid 304 2h; proxy_cache_valid 403 444 2h; proxy_cache_valid 404 2h; proxy_cache_valid 500 502 2h; proxy_cache_use_stale invalid_header http_404 http_500 http_502;...
-
使用crt和ca-bundle文件给网站配置ssl证书教程
说明:之前看到namecheap搞的免费换一年Comodo ssl证书活动,就去搞了一年,申请下来的证书文件就ca-bundle和crt文件,习惯用crt和key文件来配置ssl证书的我,就直接无视了ca-bundle文件,估计很多人也会和我一样,于是用crt文件和之前生成的key文件配置ssl后,会发现有的浏览器提示不安全,查了下问题后,发现证书链不完整导致的,感觉不能忽视ca-bundle文件,就胡乱折腾,最后给整好了。这里把方法分享下。 首先需要将颁发的crt和ca-bundle文件合并成一个新crt文件,登录vps运行命令: cat xxx.crt xxx.ca-bundle > new.crt #crt和ca-bundle文件位置填对 然后用新的crt做证书文件,key还是用之前生成的!
-
分享一些1T OneDrive账号,及免费获取一年Office 365企业版E3
说明:博主无聊翻了下邮箱,发现以前注册的Microsoft office365企业版E3还剩下为期9个月的订阅时间,就开了23个子账号,每个账号均有OneDrive 1T使用空间以及office全家桶。这里分享出来,应该够同学们看几个月电影了。然后免费获取一年E3方法后面会讲到。 账号 【2018.12.03】 这里再分享24个子账户,给不想注册E3的人用吧!这次有效期为1年,均在2019.12.2到期,不会翻车。 Office访问地址:https://www.office.com。 #如果密码错误就说明被领取了 用户名:moerats1@moeratss.onmicrosoft.com 密码:Pof20724 用户名:moerats2@moeratss.onmicrosoft.com 密码:Jah65399 用户名:moerats3@moeratss.onmicrosoft.com 密码:Fay44047 用户名:moerats4@moeratss.onmicrosoft.com 密码:Yuy35484 用户名:moerats5@moeratss.onmicrosoft.com 密码:Tun00993 用户名:moerats6@moeratss.onmicrosoft.com 密码:Rob19000 用户名:moerats7@moeratss.onmicrosoft.com 密码:Zud12971 用户名:moerats8@moeratss.onmicrosoft.com 密码:Nak44167 用户名:moerats9@moeratss.onmicrosoft.com 密码:Vob23194 用户名:moerats10@moeratss.onmicrosoft.com 密码:Fam07525 用户名:moerats11@moeratss.onmicrosoft.com 密码:Xus45710 用户名:moerats12@moeratss.onmicrosoft.com 密码:Rok30868 用户名:moerats13@moeratss.onmicrosoft.com 密码:Pas36315 用户名:moerats14@moeratss.onmicrosoft.com 密码:Moc70087 用户名:moerats15@moeratss.onmicrosoft.com 密码:Fof97605 用户名:moerats16@moeratss.onmicrosoft.com 密码:Cor99420 用户名:moerats17@moeratss.onmicrosoft.com 密码:Vob34212 用户名:moerats18@moeratss.onmicrosoft.com 密码:Lag00527 用户名:moerats19@moeratss.onmicrosoft.com 密码:Cuq65425 用户名:moerats20@moeratss.onmicrosoft.com 密码:Qum17491 用户名:moerats21@moeratss.onmicrosoft.com 密码:Gud41136 用户名:moerats22@moeratss.onmicrosoft.com 密码:Bal48564 用户名:moerats23@moeratss.onmicrosoft.com 密码:Gon98498 用户名:moerats24@moeratss.onmicrosoft.com 密码:Sux07511 用户名:moerats24@moeratss.onmicrosoft.com 密码:Wuc97755 提示 这里博主又随便的试了下之前的方法注册Microsoft Office 365企业版E3,发现之前微软活动还没结束,依然还可以参加Office 365开发者计划,并获得为期一年的免费Office 365企业版E3(可分配给25个子用户,每人1T)。 申请教程:https://www.southcat.net/archives/696/ E3开子账户OneDrive默认为1T,需要提前修改下容量,修改地址:https://admin.onedrive.com/#v=StorageSettings,设置好了后再重新添加子账户,默认容量就会变成5T。 然后这里博主开的小号依然显示1T,不知道是姿势不对,还是试用版有限制,看同学们能不能成功吧。
-
一个Aria2新的更好用的Web前端:AriaNg安装教程
说明:AriaNg是一个很实用的Aria2前端,比起Aria2 WebUI来说,好用多了,关于Aria2服务端搭建方法可参考:BT种子/磁力链接下载工具:Aria2一键安装管理脚本,这里说下前端AriaNg搭建方法。 自己也搭建了个AriaNg,可以参考:https://www.southcat.net/Aria2/ 相关说明 AriaNg功能覆盖了Aria2 WebUI和YAAW的功能。与之前的前端相比,主要优势在于:1、完全响应式布局,电脑和手机等设备全部支持。2、更友好的用户界面,使用起来更像常用的下载工具。下载任务列表支持排序(文件名、大小、进度、剩余时间、下载速度等)和搜索,正在等待的任务列表支持拖拽安排下载顺序;任务详情页面支持健康度等参数的显示,文件和BT节点列表支持排序,文件列表支持按文件类型筛选选择,BT节点列表支持显示每个节点的任务完成状态等信息;新建任务页面支持直接手动下载等;提供完整的aria2设置支持,支持aria2所有设置的说明、修改等,设置界面全部中文。3、支持下载完成通知(仅支持Webscoket协议及Chrome等现代浏览器)。4、支持自定义使用的协议,Http(s)或Websocket可任选。(Http(s)协议支持压缩,减少带宽)5、数据增量更新,减少带宽使用。6、其他功能大家可以自行体验,之后还会增加更多的功能。 截图 安装 Github项目地址:https://github.com/mayswind/AriaNg 1、安装宝塔 #Centos系统 yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh #Ubuntu系统 wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && sudo bash install.sh #Debian系统 wget -O install.sh http://download.bt.cn/install/install-ubuntu.sh && bash install.sh 安装完成后,进入面板,点击左侧软件管理,然后安装Nginx即可。 2、上传AriaNg程序搭建好环境后,添加域名(没域名的直接添加IP),再下载AriaNg程序压缩包(点击下载),并上传解压到网站根目录。最后直接访问IP或者域名即可。
-
博客已搬到ImpactVPS,顺便说下网站快速搬家的方法
说明:之前博客是放在Vultr日本服务器上,不过由于网络等一些因素,不少人反馈需要FQ才能访问,为了尽量减少这种情况,只能选择搬家了,刚好手上还有个闲置的ImpactVPS小鸡,先搬到这里再说,毕竟这家还是比较稳定的。这里顺便说下快速搬家方法。 00:00 加载中…… 请稍等…… 方法 博客使用的是lnmp环境,所以在这里主要说这个,其它环境或者虚拟主机的方法其实都差不多,照葫芦画瓢就可以了,而且搬家之前网站域名解析什么都先不要动。 1、首先在新的VPS服务器上搭建环境,比如lnmp等,且最好与之前网站的环境一致,包括数据库密码等。 2、然后在之前的服务器上将网站根目录打包,并放在网站根目录,使用命令参考: cd /home/wwwroot/xx.com tar zcvf blog.tar.gz /home/wwwroot/xx.com 3、在新的服务器上下载旧服务器打包的文件并解压,使用命令参考: wget http://xx.com/blog.tar.gz && tar zxvf blog.tar.gz && rm -rf blog.tar.gz 4、然后在新服务器上使用lnmp vhost add命令添加域名,一般lnmp等都有自动签发SSL证书功能,使用这个的话,就必须先解析域名并生效,这样网站容易造成短时间无法访问的情况。所以使用自签SSL的,最好在访问量最少的时候操作,如果使用的是自己准备的SSL证书的就先不要换域名解析。并将证书放到原位置再进行操作。 如果之前在旧服务器上有编辑过域名xx.com.conf配置文件的,再去新服务器重新编辑下,或者直接用之前的文件替换掉。 5、在新服务器上将备份文件移动到根目录,使用命令参考: mv /root/home/wwwroot/xx.com/{.,}* /home/wwwroot/xx.com/ 6、最后添加数据库并上传数据,然后修改电脑上hosts文件检查是否搬家成功,文件所在目录C:\Windows\System32\drivers\etc,在里面加上一行: #前面为域名,后面为新服务器的IP www.southcat.net 22.33.44.55 保存后,重新打开域名,这时候虽然没改域名解析,但你在本地电脑等于解析到了新服务器,这时候你可以仔细检查,觉得没问题了就将域名解析到新的VPS服务器,等待片刻,博客就不知不觉的转过来了。 数据库可以去http://ip/phpmyadmin手动备份。也可以使用命令去旧服务器备份下来,再去新服务器上传,可参考:使用Mysqldump备份和还原MySQL数据库。
-
视频切片后自动上传至国内免费CDN,无成本加速视频播放
说明:一般我们观看自己下载的电影时候,通常会因为网络或者带宽原因很卡,所以就得处理下,这里萌咖大佬闭关半个月,写出了一个视频转码切片后自动上传至国内cdn的脚本,脚本默认提供上传到语雀cdn的脚本、采用多线程上传,这里默认10线程,基本上可以很大程度上提高视频的播放速度。 更新 【2020.4.1】 由于语雀修复了上传bug,所以移除语雀cdn,默认修改为阿里云图床。 使用 Github地址:https://github.com/MoeClub/Note/tree/master/ffmpeg 1、安装ffmpeg wget https://www.southcat.net/usr/down/ffmpeg/ffmpeg-git-$(getconf LONG_BIT)bit-static.tar.xz tar xvf ffmpeg-git-*-static.tar.xz mv ffmpeg-git-*/ffmpeg ffmpeg-git-*/ffprobe /usr/local/bin/ rm -rf ffmpeg-git-* 2、安装脚本 #新建/opt/ffmpeg文件夹存放脚本等文件 mkdir /opt/ffmpeg && cd $_ #下载并运行脚本 wget https://raw.githubusercontent.com/MoeClub/Note/master/ffmpeg/Install.sh bash Install.sh 3、启动播放器由于切片生成m3u8文件后,需要播放器才能播放,而上传脚本也会自动推送m3u8文件到播放器根目录,所以这里可以配合一起用,当然自己会播放m3u8的也可以不用搭建,自行选择。 安装pip3: #CenOS 6系统 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm yum install python34 -y wget https://bootstrap.pypa.io/get-pip.py python3 get-pip.py #CenOS 7系统 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm yum install python36 -y wget https://bootstrap.pypa.io/get-pip.py python3 get-pip.py #Debian/Ubuntu系统 apt update apt install python3-pip -y 安装依赖: #进入到播放源码文件夹 cd /opt/ffmpeg/Player pip3 install tornado 后台启动: nohup python3 Player.py& 注意Player.py文件的MasterKey值需和publish.sh的Token值对应,别乱改就行。 4、脚本用法 #命令示例 bash /path/to/media.sh <不含特殊字符的文件名.mp4> [特殊选项] #特殊选项: 数字;可选参数,默认为0 #0:自动根据文件比特率计算合适的切片大小。(目标文件大小小于20M,一般情况下没问题) #1:强制重新编码,重新编码比特率为2400k。(一般用于非H264编码,文件切片,速度较慢) #2:自定义切片时间,当为2时切片时间为3秒,当大于等于3时切片时间为特殊选项数字。...
-
CentOS 7使用iptables开放设置端口
说明:CentOS 7默认使用的是firewall作为防火墙,使用iptables必须重新安装设置一下。如果不想太麻烦可参考:CentOS 7开放设置端口及firewall常用命令介绍。1、直接关闭防火墙 systemctl stop firewalld.service #停止firewall systemctl disable firewalld.service #禁止firewall开机启动 2、安装并设置iptables service yum -y install iptables-services 如果要修改防火墙配置,如增加防火墙端口3306 vi /etc/sysconfig/iptables 增加规则 -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT 保存退出后 systemctl restart iptables.service #重启防火墙使配置生效 systemctl enable iptables.service #设置防火墙开机启动 最后重启系统使设置生效即可。
-
使用宝塔面板安装Rocket.Chat多功能团队聊天室
说明:Rocket.Chat一年前就介绍过→传送门,一款多功能团队聊天室,支持群组聊天,直接通信,私聊群,桌面通知,媒体嵌入,链接预览,文件上传,语音/视频,聊天,截图,实时翻译等等,安装方法比较简单的有Snap、Docker,此前也只说过Snap安装方法,由于一直有小伙伴需要宝塔面板安装教程,所以这里就水一篇宝塔教程。 安装 官方文档:https://rocket.chat/docs/ 环境要求:NodeJS 8.11.4、Mongodb 4.0.9、Nginx(非必需)。 提示:由于官方建议的最低内存1G,所以512M或更小的建议加点虚拟内存,可以使用Swap一键脚本→传送门。 1、安装宝塔 #CentOS系统 wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh #Ubuntu系统 wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh #Debian系统 wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh 安装完成后,进入面板,点击左侧软件商店,然后安装PM2管理器、MongoDB、Nginx(使用域名访问才需要安装,反之不用)。 注意:Debian安装MongoDb之前还需要使用命令apt install sudo,不然可能存在MongoDb启动不了的情况;如果你已经安装了MongoDb,那就先使用apt install sudo,再使用/etc/init.d/mongodb start启动即可。 2、环境配置先点击左侧软件商店,找到PM2管理器设置选项,选择Node版本,切换到8.11.4版本,不然太高可能会导致Rocket.Chat运行出错。 然后再找到MongoDb设置选项,点击配置文件,新增/修改以下代码: #设置storage引擎,新增engine参数,并修改下dbPath路径,不然会启动不了 storage: dbPath: /www/server/mongodb/Rocket.Chat directoryPerDB: true engine: mmapv1 journal: enabled: true #配置replica set,新增以下参数 replication: replSetName: rs01 保存后,MongoDb会自动关闭,这时候使用命令: #新建数据存储路径,即上面配置文件修改的dbPath参数 mkdir /www/server/mongodb/Rocket.Chat #授权 chown mongo:mongo /www/server/mongodb/Rocket.Chat #重新启动数据库 /etc/init.d/mongodb start #启动replica set mongo --eval "printjson(rs.initiate())" 3、安装依赖 #Debian/Ubuntu系统 apt install -y graphicsmagick #CentOS系统 yum install -y GraphicsMagick 4、安装Rocket.Chat #下载rocket.chat wget -O rocket.chat.tgz...