说明:OneIndex很久前就介绍过了,一个目录列表程序,可以将OneDrive网盘里面的文件列出来供我们查看/下载,而且并不会消耗服务器的流量和空间,很是强大。

截图

OneIndex安装-aonly小站
OneIndex安装-aonly小站
OneIndex安装-aonly小站

功能

#以下为大致功能
缩略图功能
命令行上传功能
响应式,支持小屏设备
图片、视频、音频在线预览
代码在线查看(jscsshtmlshphpjavamd等)
README.md支持,解析各目录下(onedirive目录下)README.md文件,在页面尾部展示。
HEAD.md支持,在页面头部展示
.password文件夹加密
在线视频播放器替换成Dplayer
在线视频播放支持mp4webm,avimpgmpegrmrmvbmovwmvmkvasfcli文件夹上传(单线程)
不同后缀展示设置
文件直接输出
文件上传管理(后台)
图床功能

安装

Github地址:https://github.com/donwa/oneindex

这里我用CentOS7+宝塔记录一下简单的安装部署过程。

首先在你的小鸡上使用如下命令安装宝塔面板:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install.sh && sh install.sh

然后使用宝塔面板安装一个LNMP环境。PHP版本建议选择7.0

新建一个站点,在站点设置内找到伪静态设置,写入如下规则:

autoindex off;

location / {
	try_files $uri $uri/ /index.php?/$uri;
}

if (!-f $request_filename){
set $rule_0 1$rule_0;
}
if (!-d $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
rewrite ^/(.*)$ /index.php?/$1 last;
}

将oneindex的源码上传到你的站点根目录内。(上传的时候不要包含oneindex-master这个目录,而是直接上传oneindex-master目录内的所有文件)

oneindex源码的下载地址:https://codeload.github.com/donwa/oneindex/zip/master

OK,不出意外的话,现在打开你的站点域名应该可以看到这样一个界面:

安装完成后,打开域名,按照提示进行安装配置。

点击下一步,然后看到如下图界面,点击(获取应用ID和机密)按钮:

OneIndex安装-aonly小站

此时在弹出的新页面内登录你的onedrive网盘账号,会获得机密代码,复制它,粘贴到oneindex对应的部位:

OneIndex安装-aonly小站

接着点击上图中的“知道了,返回到快速启动”按钮,看到如下图红框所示部分,复制它,粘贴到oneindex对应的部位:

OneIndex安装-aonly小站

OK,继续下一步,如果你之前填写的内容没问题,那么就可以看到如下图所示的内容,点击“绑定账号”:

OneIndex安装-aonly小站

此时会跳转到微软的授权界面,点击接受即可:

OneIndex安装-aonly小站

至此,大功告成,看到如下图界面就说明你已经安装成功了:

OneIndex安装-aonly小站

后台地址:https://xx.com/?/admin,默认密码:oneindex,网站根目录/home/wwwroot/xx.com

特殊文件实现功能

README.mdHEAD.md、.password特殊文件使用。

#在文件夹底部添加说明
在onedrive的文件夹中添加README.md文件,使用markdown语法。

#在文件夹头部添加说明  
在onedrive的文件夹中添加HEAD.md文件,使用markdown语法。  

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

#直接输出网页
在onedrive的文件夹中添加index.html文件,程序会直接输出网页而不列目录,配合文件展示设置-直接输出效果更佳。

命令行功能

仅能在php cli模式下运行,且以下命令均在网站根目录/home/wwwroot/xx.com运行。

#清除缓存 
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/

获取OneDrive 5T网盘

如果我们使用个人版网盘的话,容量好像不够,这时候我们就可以使用OneDrive Business账号了,总共有5T容量,如果你有钱可以直接去官网买,没钱就可以使用方法免费获取了,这里推荐如有乐享博客分享的获取OneDrive 5T网盘的方法,查看:申请OneDrive 5T 网盘便民方法和邮箱

申请方法大致流程:

1、进入注册地址https://products.office.com/en-us/student?tab=students
2、输入如有乐享提供的临时邮箱
3、填入密码,和从临时邮箱获取的验证码