本文章来演示OneIndex+OneDrive+Aria2+Aria2Ng来搭建网盘,离线下载,在线观看不限流量,通过Aria2下载后自动上传OneDrive
OneIndex是将OneDrive网盘的文件目录给列出来,仅仅需要将程序部署在服务器上,不占用太大的空间,索引中的文件并不占用服务器空间,仅仅占用OneDrive容量,流量也不用走服务器流量
Aria2是一个命令行下的下载工具(支持 HTTP/HTTPS、FTP、BitTorrent、Metalink),Aria2Ng则是它的前端
OneDrive网盘个人版只要免费5G容量,付费版相对个人使用而言较为昂贵,可以申请微软的Office 365得到5t
下面使用Centos7,加宝塔面板安装
安装步骤:
1.安装宝塔
宝塔官网使用宝塔的安装指令,安装完成后,在宝塔面板里安装环境,只需Nginx和PHP5.6以上版本

2.安装OneIndex
添加网站并上传OneIndex源码,权限777,对Nginx添加伪静态,伪静态如下
location / {
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;
}
}
宝塔可以在网站管理里,选择网站,设置伪静态

进入网站,开始安装,绑定OneDrive,直接点击获取client_id
和client_secret
,绑定后即可安装完成
3.安装Aria2和AriaNg
Github原地址:https://github.com/P3TERX/aria2.sh
下载脚本 :
wget -N git.io/aria2.sh && chmod +x aria2.sh
运行脚本:
./aria2.sh

输入1进行安装,安装完成保存RPC密钥(也可以自行查看修改),可以选择更新BT-Tracker
默认下载目录:/root/Download
Aria2安装完成,接下来安装AriaNg,先到宝塔面板创建网站,再上传AriaNg的源码
进入AriaNg,里面可以选择中文,再AriaNg设置里面,选择RPC密钥添加,添加完毕后,前端里会显示Aria2已连接

4.Aria2下载完毕自动上传OneDrive的配置
这里使用OneIndex上传
首先在目录下 /root/.aria2 文件夹内创建一个新文件,命名为oneindexup.sh(或者在本地创建此脚本再上传到服务器),复制脚本内容
脚本内容如下:(domain=’zhazong.zhazong’,这一条需要修改成自己的域名)
#!/bin/bash path=$3 #取原始路径,我的环境下如果是单文件则为/data/demo.png,如果是文件夹则该值为文件夹内某个文件比如/data/a/b/c/d.jpg downloadpath=’/root/Download’ #修改成Aria2下载文件夹 domain=’zhazong.zhazong’ #修改成自己域名 if [ $2 -eq 0 ] then exit 0 fi while true; do #提取下载文件根路径,如把/data/a/b/c/d.jpg变成/data/a filepath=$path path=${path%/*}; if [ “$path” = “$downloadpath” ] && [ $2 -eq 1 ] #如果下载的是单个文件 then php /www/wwwroot/$domain/one.php upload:file $filepath /$folder/ rm -rf $filepath php /www/wwwroot/$domain/one.php cache:refresh exit 0 elif [ “$path” = “$downloadpath” ] then php /www/wwwroot/$domain/one.php upload:folder $filepath /$folder/ rm -rf “$filepath/” php /www/wwwroot/$domain/one.php cache:refresh exit 0 fi done
给这个脚本授权,ssh输入指令如下:
chmod +x /root/.aria2/oneindexup.sh
还需要在配置文件aria2.conf
里加上一行on-download-complete=/root/.aria2/oneindexup.sh
,也可以直接使用命令:
echo “on-download-complete=/root/.aria2/oneindexup.sh” >>/root/.aria2/aria2.conf
重启aria2,指令:
service aria2 restart
以上就为搭建的全部过程,当然也有其他各种方法搭建,也可以直接挂载网盘到服务器
手动上传方式,要把上传的文件移动到OneIndex网站源码的目录下,在OneIndex里进行上传