目录
单一OneDrive
目录文件索引应用,基于优雅的PHP
框架构建Laravel5.7
,并通过Microsoft Graph
接口获取数据展示,支持多类型帐号登录,多种主题显示,简单而强大。
这篇文章还是用宝塔来搭建,貌似这个程序更新的比较勤快。
功能
- OneDrive目录查看索引分页查看;
- 支持代码,图片,文本文件即时预览,图片列表栏展示;
- 支持音视频播放(兼容大部分格式),视频播放采用Dplayer.js,音乐播放采用Aplayer;
- 支持自定义创建文件夹,文件夹加密,文件/文件夹删除,文件/文件夹的复制与移动;
- 支持文件搜索,文件上传,文件直链共享与删除,文件直链一键下载;
- 支持管理readme / head说明文件;
- 支持图床;
- 支持命令行操作;
- 支持文件离线下载(个人版);
- 后台基本显示管理,多主题管理,文件预览管理等等(清理缓存后及时生效);
- 支持世纪互联;
- 支持多种缓存系统(Redis,Memcached等);
- 更多功能欢迎大家尝试。
注:部分功能需登录。
魔改内容
多Onedrive账户支持:
- 可同时挂载多个Onedrive网盘
- 图床可选择上传到不同的盘区
- 多网盘命令支持
一些小修复:
- 一键获取下载链接
- 图床复制链接
- Ajax删除文件
- ......
项目及演示
演示站点:https://magic.yukino.co/
原项目地址:https://github.com/WangNingkai/OLAINDEX
魔改项目地址:https://github.com/YukiCoco/OLAINDEX-Magic
初始化OLAINDEX-Magic
准备
- 准备好宝塔面板
- 安装PHP环境
- 安装nginx
注意: PHP
环境建议选择 7.1
以上
安装PHP扩展
点击 设置
安装扩展
这里安装 fileinfo
扩展 并附带安装 opcache
扩展 以加速php运行,也可以安装 redis 和memcached 扩展。
禁用函数
在PHP管理中删除几个禁用函数:
分别是 exec
、 shell_exec
、 proc_open
、proc_get_status
这四个函数。
新建站点
宝塔新建站点这个就不多讲了。
部署
进入命令行,也可以用宝塔终端,在命令行模式进入网站根目录,具体代码如下:
cd web目录 git clone https://github.com/YukiCoco/OLAINDEX-Magic.git tmp mv tmp/.git . rm -rf tmp git reset --hard cp database/database.sample.sqlite database/database.sqlite # 数据库文件 composer install -vvv # 这里确保已成功安装 composer ,如果报权限问题,建议给予用户完整权限。 chmod -R 777 storage chmod -R 777 database chown -R www:www * # 此处 www 根据服务器具体用户组而定 php artisan od:install # 此处绑定域名需根据实际域名谨慎填写(包含http/https) # 安装完成后,不要忘记配置 nginx ,将域名指向应用目录的 public 下,参考下面nginx配置。
执行到最后一条需要设置域名,管理员账号和密码,如图:
配置站点信息
上面的初始化之后,我们还需要配置站点信息。
设置运行目录为public以及 取消防跨站攻击
因为是基于Laravel,所以要修改网站运行目录为public,宝塔的设置:
如图:勾选取消 防跨站攻击(open_basedir) 将站点的运行目录改为 public 别忘了保存!!!
修改伪静态
网站设置→伪静态,选择 Laravel 5,保存。
修改配置文件
注释选定内容,防止图片出现404。
配置SSL
这一步随意,如果需要配置,点击,网站配置→ssl,选择 Let's Encrypt 申请,按要求填写申请:
注意:开启 SSL 后,选择强制 HTTPS。
网站配置
上面保存之后,就可以打开网站了,注意,要用之前系统生成的账号密码登录。
这里就和oneindex安装差不读了,点击申请来或得信息,然后填写在用户id和client_secret中,保存之后,如图:
确认绑定,会跳出微软的确认的信息,如图:
接受之后,绑定成功。
效果
绑定成功之后,就会出现首页,如图:
登录后台,发现功能很强大。后台登录地址:https://你的域名/admin
初始用户名:admin 初始后台密码: 12345678
如何 绑定&使用多账户
登录Azure:https://portal.azure.com/ 或 https://portal.azure.cn/ (世纪互联)
点击 Azure Active Directory
点击 应用注册
点击 新注册 名字任意取,账户类型如图,重定向URL填你页面所显示的redirect_uri
接下来点击 概述 复制 应用程序(客户端) ID(client_id)
点击 证书和密码 添加新客户端密码并复制(client_secret)
在绑定页面填入client_id client_secret 选择好账户类型即可绑定。
绑定多账户见:
最后
如果在初始化配置中填写,client_id,client_secret,保存以后,会出现请确认以下信息,client_id ,client_secret *****,redirect_uri ,账号类型,都是空白的。点绑定又回到初始化配置,如果碰到这种问题,可以在试着配置下权限问题,具体执行如下:
chmod -R 755 storage/ chown -R www:www *
安装默认提供的是国际版,如果是世纪互联需要在账户类型中重新选择。
安装真的很繁琐,但是功能很强大,值得试试。
如果版本需要更新升级,请执行以下命令:
git pull composer install -vvv # 无版本更新只需执行到此(同时执行最后两条权限命令) chmod -R 755 storage # 补充,保证缓存的写入权限,否则500 chown -R www:www *
如果权限没设置好,总会发现500错误,真的很头疼,所以安装时候一定要注意这个问题。
参考:
https://github.com/YukiCoco/OLAINDEX-Magic
https://github.com/YukiCoco/OLAINDEX-Magic/blob/master/docs/question.md