说明

一款 OneDrive 目录文件索引应用,基于优雅的 PHP 框架 Laravel5.7 搭建,并通过 Microsoft Graph 接口获取数据展示,支持个人,国际版,世纪互联版帐号登录,基于bootswatch响应式页面布局,适配PC、平板、手机;多种主题显示,简单而强大。

项目地址

https://github.com/WangNingkai/OLAINDEX

预览

https://one.102103.xyz
11.png

功能

  • OneDrive目录查看索引,支持分页查看;
  • 图床功能;
  • 支持文件路径一键复制、下载;
  • 支持代码、图片、文本文件即时预览;
  • 支持音视频播放(兼容大部分格式),视频播放采用Dplayer,音乐播放采用Aplayer;
  • 支持文件夹加密;
  • 支持文件上传;
  • 支持文件搜索;
  • 配置文件化,不再依赖数据库;

安装要求

安装要求:
内存: 512M以上,推荐768M以上(纯面板约占系统60M内存)
硬盘: 100M以上可用硬盘空间(纯面板约占20M磁盘空间)
系统: CentOS 6.x / 7.x (Ubuntu、Debian),确保是干净的操作系统,没有安装过其它环境带的 
Apache/Nginx/php/MySQL(已有环境不可安装)

环境选择

php >=7.2 (看说明可以7.1,我选7.1安装失败捣鼓了老半天!)

Snipaste_2018-11-18_20-49-04.png
安装PHP扩展
选择PHP点击 设置 安装扩展
这里安装 fileinfo 扩展 并附带安装 opcache 扩展 以加速php运行
安装扩展.png
修改 php.ini 文件
修改 PHP 配置,需要关闭几个禁用的函数
分别是 exec 、 shell_exec 、 proc_open 、proc_get_status 这四个函数。
修改phpini.png
修改 composer 源(国外服务器请忽略)
宝塔面板默认安装了 Composer 包管理器
进入命令行Console,执行以下命令更换为国内源

composer config -g repo.packagist composer https://packagist.laravel-china.org # 更换源为国内源,国外服务器可忽略此步骤    

到此基本的PHP环境准备完毕


安装配置OLAINDEX

1.新建站点
添加网站.png
到此网站配置稍后继续
2.部署OLAINDEX
首先打开宝塔ssh或者第三方应用连接vps
这里用的宝塔ssh
打开宝塔ssh.png
安装下面步骤执行

cd web 目录 # 刚才新建站点的根目录 我这里是 cd /www/wwwroot/one.102103.xyz  进入文件目录,根据实际情况来
git clone https://github.com/WangNingkai/OLAINDEX.git tmp
mv tmp/.git .
rm -rf tmp
git reset --hard
composer install -vvv # 这里确保已经安装composer成功  # 如果报权限问题,建议先执行权限命令
chmod -R 755 storage/
chown -R www:www *
php artisan od:install
chmod 777 storage/app/config.json # 不要忘记执行这一步,文件权限,否则安装报403

注意不要忘记最后一步
最后一步.png
olaindex到此部署ok,执行配置站点

3.配置站点信息
配置站点信息.png
首先站点目录
首先站点目录.png
如图:勾选取消 防跨站攻击(open_basedir) 将站点的运行目录改为 public 别忘了保存
修改伪静态
选择 Laravel 5,保存
伪静态.png
修改配置文件
注释选定内容,防止图片出现404
修改配置文件.png
配置SSL
选择 Let's Encrypt 申请,按要求填写申请
配置ssl.png
开启 SSL 后,选择强制 HTTPS
强制ssl.png
保存后,打开网站即可配置
打开网站配置onedrive.png
大功告成
剩下的配置按照常规操作即可,国际版和个人可以一键配置。世纪互联需要手动配置。参照这位博主的教程
回调地址直接填写填写自己的域名 非中转域名回调,必须是 https 协议,格式一般为 https://写你的域名/oauth 所以配置服务器需要为域名添加 SSL,否则无法生效。 然后client配置

4.后台登陆
后台默认地址:https://你的域名/admin
初始后台密码: 12345678;
也可通过命令行工具 php artisan od:password 生成一个新的8位数的密码!
路由修改地址:routes/web.php
路由修改.png

5.重置操作

 php artisan od:reset 重置应用数据
 php artisan od:logout 重置账号数据
 php artisan od:login 登陆操作

6.任务调度
推荐配置此任务调度器(可选)。后台定时刷新token和缓存,可适当加速页面的访问

 * * * /php/bin/path/php /you/site/path/artisan schedule:run >> /dev/null 2>&1 &

这个 Cron 为每分钟执行一次 Laravel 的命令行调度器,每30分钟刷新token,每10分钟刷新缓存。

  1. 缓存配置

默认 OLAINDEX 使用文件缓存,可以先修改为 Laravel 支持的缓存类型,如 "apc", "array", "database", "file", "memcached", "redis"等,只需修改配置文件 .env。具体配置请参考 laravel 文档 缓存系统
如使用 redis作为缓存的话,还需要安装 predis 包,手动执行 composer require predis/predis
修改.env文件后需要执行

php artisan config:cache

缓存配置

CACHE_DRIVER=file # 这里是缓存类型

如配置redis 缓存需要填写以下配置

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

Last modification:April 4th, 2020 at 10:31 pm
如果觉得我的文章对你有用,请随意赞赏