说明:之前我们使用的最多的OneDrive
目录列表程序就是Oneindex,博主已经写了很多使用教程了,最近有大佬受Oneindex
启发,功能借鉴其思想,写出一个基于laravel5
框架的OneDrive
目录列表程序,看上去很不错,这里分享下。
截图
简介
OneDrive
目录索引;- 基于最新
PHP
框架laravel5
搭建而成; - 基于
bootswatch
响应式页面布局,适配PC
、平板、手机;
功能
OneDrive
目录查看索引,支持分页查看;- 图床功能(国内不太稳低);
- 支持文件路径一键复制、下载;
- 支持代码、图片、文本文件即时预览;
- 支持音视频播放(兼容大部分格式),视频播放采用
Dplayer
,音乐播放采用Aplayer
; - 支持文件夹加密(需管理员);
- 支持文件上传(需管理员);
- 支持
readme
/head
说明文件添加/编辑/删除; - 支持文件搜索(需管理员);
- 支持自定义创建文件夹(需管理员);
- 支持文件/文件夹删除(需管理员);
- 后台基本管理,支持主题,预览设置等等(清理缓存后及时生效)(需管理员)。
v2.0
全新路径显示(pathinfo
)- 添加看图相册
- 配置文件化,不再依赖数据库
TODO
- 共享目录支持
- 支持视频字幕,音频歌词
- 支持后台大文件上传,断点续传
环境要求
PHP >= 7.1.3
OpenSSL PHP
PHP PDO 扩展
PHP Mbstring 扩展
PHP Tokenizer 扩展
PHP XML 扩展
PHP Ctype 扩展
PHP JSON 扩展
PHP Fileinfo 扩展(非必需,但最好安装)
安装
Github地址:https://github.com/WangNingkai/OLAINDEX
这里为了方便,可以直接使用宝塔搭建lnmp
环境。
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
然后进入后台再安装PHP 7.2
、Nginx
,这里基本上除了Fileinfo
扩展,其余都默认安装好了。
接下来再找到左侧软件管理-PHP
管理-设置-安装Fileinfo
扩展(非必需扩展,不过不安装的话,不保证安装程序能成功)。
#如果Fileinfo拓展安装失败,就是内存太小,我们可以添加swap,不适用于ovz
1、脚本添加,脚本地址:https://www.moerats.com/archives/722/。
2、面板添加,找到左侧软件管理-系统工具-安装Linux工具箱,然后进入工具箱添加。
然后同样的在PHP
设置里找到禁用函数,删除proc_open
、proc_get_status
和putenv
函数,最后重启PHP
。
2、安装Composer
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
3、安装程序
我们先点击左侧网站,添加域名,此时网站根目录就是/www/wwwroot/xx.com
。
运行命令:
#将域名修改成自己的再运行
cd /www/wwwroot/xx.com
git clone https://github.com/WangNingkai/OLAINDEX.git tmp
mv tmp/.git .
rm -rf tmp
git reset --hard
composer install -vvv #这里确保已成功安装composer,如果报权限问题,建议给予用户完整权限。
chmod -R 777 storage
chown -R www:www * #此处www根据服务器具体用户组而定
composer run install-app
5、伪静态设置
点击域名设置-网站目录,运行目录选择public
,并把防跨站的勾去掉并重启PHP
。然后点击伪静态,输入以下代码:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
最后就可以打开域名进行安装配置了。
注意回调地址redirect_uri
需要是https
地址,可以直接在宝塔开启免费SSL
证书。如果你使用上面的一键申请绑定账号失败了,可以试试手动申请client_id
、client_secret
,申请方法→传送门。
后台地址:https://xx.com/admin
,密码:12345678
。
特殊文件功能
#不建议创建和以下同名的文件夹和文件,否则会导致文件无法查看下载
README.md、HEAD.md 、.password 、.deny特殊文件使用
#在文件夹底部添加说明
在onedrive的文件夹中添加README.md文件,使用markdown语法。
#在文件夹头部添加说明
在onedrive的文件夹中添加HEAD.md 文件,使用markdown语法。
#加密文件夹
在onedrive的文件夹中添加.password文件,填入密码,密码不能为空。
#禁止访问文件夹
在onedrive的文件夹中添加.deny文件,该文件夹被禁止访问。
其它设置
#重置全部数据,删除数据库数据
php artisan od:reset
#重置OneDrive登陆账号
php artisan od:logout
#升级程序
git pull
composer install -vvv
php artisan od:update
如果你出现了一些问题可以先查看→传送门。
用aws出现 500 Server Error
看一下我文章最下面留的那个传送门地址,有告诉你原因和解决方法
完美使用,谢谢
Configuration cache cleared!
The environment file is invalid!
Failed to parse dotenv file due to unexpected whitespace. Failed at [chmod 777 storage/app/config.json #
输入域名后出现这个怎么解决啊
是不是多了空格,重新试下
我想问一下 oneindex有很多视频播放没有声音 这个能解决吗 比如mkv格式
应该是解码问题,开启了Dplay没?开的话关掉看看
我想问问这个可以用OneIndex上传的方法来自动上传吗
直接用这个就好了https://www.moerats.com/archives/697/
我用了第一个方法,需要把之前的创建的文件删掉再用这个还是直接用这个就可以了呢
只需要配置下脚本,然后替换下上传脚本内容,再重启aria2即可
博主能否说一下OLAIndex缓存类型的更换配置,类似redis之类的,虽然OLAIndex支持多种缓存类型,但是我对这方面不了解,不知道怎么配置其他缓存类型。
Git文档好像都说了,太具体的话暂时不太清楚,可以去问下作者。
希望大佬出一个这个一键搭建加离线!
这个看需要的人多不,多的话就写一个。
想问一个问题,pyone,OLAINDEX都是参考oneindex做的目录列表,是不是都跟后者一样不走服务器流量呢?
是的,都不走服务器流量。
502 Bad Gateway
nginx
安装好后提示错误,什么原因,NGINX配置不对吗
对,一般是配置错误,因程序出现的错误中还没502。
好了,我想问下底部版权信息在哪改Made by IMWNK.
按照方法按照出现
The environment file is invalid: Dotenv values containing spaces must be surrounded by quotes.
这里的话是因为在命令行安装时,提示输入域名时在中间添加了空格,请到根目录的 (.env) 文件修改( APP_URL) 为绑定域名,并确保没有空格。
一样的 试了很多次 求救
哪一步出现这个问题?
最后一步 也添加了swap 还是不行 试了很多次 阿里云轻量级
最后一步到底是哪步?我试了下,安装过程没啥问题,绑定账号的界面也可以打开,之后就没测试了。
composer install -vvv