OneIndex将OneDrive打造成网盘

很多人都有容量较大的OneDrive账号,并且很多个,如果用不完的话可以使用OneIndex打造为一款网盘,非常的方便分享文件。可以充分的利用OneDrive,今天新发布的OneIndex还支援了个人OneDrive账号,非常的方便。

onedrive

0x00 关于OneIndex

OneIndex是一个类似与PHP目录的程序,其主要功能是将OneDrive的文件目录给列出来,仅仅需要将程序部署在服务器上,不占用太大的空间,索引中的文件并不占用服务器空间,仅仅占用OneDrive容量,流量也不用走服务器流量。

OneIndex将OneDrive的文件列出目录来,可以提供文件直连下载。最早的OneIndex仅仅支持企业版与教育版的OneDrive,不过最近版本的OneIndex已经开始了对个人版OneDrive的支援。

#OneDrive项目地址(GitHub)

https://github.com/donwa/oneindex

0x01 OneIndex部署教程

OneIndex官网GitHub页面也已经简述了如何部署OneIndex,总体过程非常的简单。

1.部署环境要求。

  • PHP空间,PHP5.6+打开Curl支持
  • OneDrive账号
  • OneIndex程序
  • 如需绑定自己的域名,那么必须部署HTTPS支援

2.环境搭建,我选择了今天才发布的LNMP1.5,一切都是用默认设置即可。如果使用LNMP1.4的换,注意选择PHP版本,因为默认选项PHP版本小于5.6。

#LNMP1.5安装

wget -c http://soft.vpser.net/lnmp/lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz && cd lnmp1.5 && ./install.sh lnmp

3.安装Curl,我选用的系统是我较为熟悉的CentOS,所以以下Curl安装适用于CentOS。

#下载Curl并解压进入目录

wget https://curl.haxx.se/download/curl-7.54.0.tar.gz

tar -zxf curl-7.54.0.tar.gz

cd curl-7.54.0

#安装与配置

./configure

make

make install

安装好之后,就可以在LNMP下添加虚拟主机了,并且添加SSL(绑定个人域名)。

4.下载或者git clone项目OneIndex文件,并且解压到网站目录。给config/与cache/目录设置读写权限。

chmod 777 config/ cache/

5.打开你的网址,看是否通过安装环境检测。

oneindex-install-envi(点击放大)

如果你按照之前的步骤操作的换,那么环境检测肯定是没有问题的。

6.点击蓝色按钮,并通过页面登陆你的OneDrive账号,获取client_id与client_secret,注意看最下面一览的域名,如果你的域名没有支援SSL,那么会有个默认域名而不是自定义域名。

oneindex-id-secret(点击放大)

关于client_id与client_secret的获取,可以参考作者的的动态图。

(点击放大)

填写好client_id与client_secret,那么最复杂的步骤以及过去了。

7.绑定你的OneDrive账号,并且授权给OneIndex。

oneindex-account-login(点击放大)

oneindex-authority(点击放大)

8.之后就可以完成安装了。

oneindex-finish(点击放大)

安装完成后可以通过后台登录对OneIndex进行管理。

#OneIndex后台地址

https://www.yourdomain.com/?/admin/

OneIndex功能非常的强大,还可以将OneIndex变为图床。

0x02 OneIndex推荐配置

推荐配置主要是通过后台定时刷新缓存,可增加前台访问的速度,并非必须设置。将以下内容修改为自己的配置后添加入Crontab中即可。

# 每小时刷新一次token

0 * * * * /具体路径/php /程序具体路径/one.php token:refresh

# 每十分钟后台刷新一遍缓存

*/10 * * * * /具体路径/php /程序具体路径/one.php cache:refresh

0x03 OneIndex高级设置

README.md、HEAD.md 、 .password特殊文件使用

可以参考https://github.com/donwa/oneindex/tree/files

在文件夹底部添加说明:

在onedrive的文件夹中添加README.md文件,使用markdown语法。

在文件夹头部添加说明:

在onedrive的文件夹中添加HEAD.md 文件,使用markdown语法。

加密文件夹:

在onedrive的文件夹中添加.password文件,填入密码,密码不能为空。

命令行功能

仅能在php cli模式下运行
清除缓存:

php one.php cache:clear

刷新缓存:

php one.php cache:refresh

刷新令牌:

php one.php token:refresh

上传文件:

php one.php upload:file 本地文件 [onedrive文件]

上传文件夹:

php one.php upload:folder 本地文件夹 [onedrive文件夹]

例如:

//上传demo.zip 到onedrive 根目录  
php one.php upload:file demo.zip  

//上传demo.zip 到onedrive /test/目录  
php one.php upload:file demo.zip /test/  

//上传demo.zip 到onedrive /test/目录并命名为 d.zip  
php one.php upload:file demo.zip /test/d.zip  

//上传up/ 到onedrive /test/  
php one.php upload:file up/ /test/

发表评论