使用OneList搭建Onedrive网盘列表站点

老黑 2022年5月14日12:50:49教程文档评论43阅读模式

介绍

OneList一款使用Golang编写的Onedrive网盘列表程序,同时支持国际版、个人免费版(家庭版)、中国版(世纪互联)及多网盘绑定。

使用OneList搭建Onedrive网盘列表站点

特点

  • 支持 国际版, 个人免费版(家庭版), 中国版(世纪互联).
  • 支持同时列出多个盘的目录.(同时挂载多个网盘或单个网盘挂载成多个SubPath,要求每个SubPath唯一)
  • 支持文件夹内超过 200 个项目
  • 支持后台自动刷新缓存.
  • 支持路径中含有特殊字符.
  • 支持使用不同目录使用不同账户密码加密(HTTP 401).
  • 支持隐藏目录和文件(跳过缓存).
  • 支持自定义 ClientID 和 SecretKey .
  • 数据储存在内存中,响应更加迅速.

安装

1、安装Onelist主程序
#新建并进入OneList目录
mkdir /usr/local/OneList && cd $_
#64位系统下载
wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/amd64/linux/OneList
#32位系统下载
wget https://raw.githubusercontent.com/MoeClub/OneList//master/Rewrite/i386/linux/OneList
#arm架构下载
wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/arm/linux/OneList   
#给予OneList权限
chmod +x OneList
2、授权认证

点击下方URL登录并授权

国际版、个人版(家庭版) 中国版(世纪互联)

之后会获得一个localhost开头的链接,将网页地址全部复制。

3、生成配置文件
#将url换成你上面复制的授权地址(完整链接,包括http://)
#国际版
./OneList -a "url" -s "/onedrive01" -C "0edc178e-5e24-4daa-bdd9-b083aebca21c" -S "DzI8Q~uZBVGtASLiXcDQkzrRJfQYZA5GPnVZzavB"
#个人版(家庭版)
./OneList -ms -a "url" -s "/onedrive02" -C "0edc178e-5e24-4daa-bdd9-b083aebca21c" -S "DzI8Q~uZBVGtASLiXcDQkzrRJfQYZA5GPnVZzavB"
#中国版(世纪互联)
./OneList -cn -a "url" -s "/onedrive03" -C "dfe36e60-6133-48cf-869f-4d15b8354769" -S "H0-1:6.Sb8:WCW/J-c][email protected][i0EZ2"
提示 Success! Add config. '/path/to/config.json' 则成功
4、自定义配置文件
[
  {
    // 如果是家庭版或者个人免费版, 此项应为 true.
    "MSAccount": false,
    // 如果是中国版(世纪互联), 此项应为 true.
    "MainLand": false,
    // 授权令牌
    "RefreshToken": "1234564567890ABCDEF",
    // 单配置文件中,此项要唯一.将此OneDrive中设置为`RootPath`目录映射在`http://127.0.0.1:5288/onedrive` 下.
    // (只推荐一个盘位的时候使用根目录"/".)
    "SubPath": "/onedrive",
    // 读取OneDrive的某个目录作为根目录. (支持根目录"/")
    "RootPath": "/Test",
    // 隐藏OneDrive目录中的文件夹和文件, 条目间使用 "|" 分割. (跳过缓存设置的条目.)
    "HidePath": "/Test/Obj01|/Test/Obj02",
    // 使用用户名和密码加密OneDrive目录. 目录和用户名密码间使用 "?" 分割, 用户名密码使用 ":" 分割, 条目间使用 "|" 分割. 无效条目将跳过. 
    "AuthPath": "/Test/Auth01?user01:pwd01|/Test/Auth02?user02:pwd02",
    // 缓存刷新间隔.(所有项目中的刷新时间取最小值为有效刷新间隔)
    "RefreshInterval": 900
  }
]
4、下载主题并运行
#下载默认的index.html主题
cd /usr/local/OneList

wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/index.html 
#监听10800地址,自行修改
/usr/local/OneList/OneList -bind 0.0.0.0 -port 10800 -C "0edc178e-5e24-4daa-bdd9-b083aebca21c" -S "DzI8Q~uZBVGtASLiXcDQkzrRJfQYZA5GPnVZzavB"
5、设置开机自启(推荐)
方法一:crontab任务加载
# /usr/local/OneList/OneList 为OneList的完整路径
# 后台运行
nohup /usr/local/OneList/OneList -bind 0.0.0.0 -port 10800 -C "0edc178e-5e24-4daa-bdd9-b083aebca21c" -S "DzI8Q~uZBVGtASLiXcDQkzrRJfQYZA5GPnVZzavB" >/dev/null 2>&1 &

# 开机自启并后台运行
编辑 /etc/crontab 文件, 并添加下面一行并多按几个回车. (有些系统不留空行会出现意外)
@reboot root nohup /usr/local/OneList/OneList -bind 0.0.0.0 -port 80 -C "0edc178e-5e24-4daa-bdd9-b083aebca21c" -S "DzI8Q~uZBVGtASLiXcDQkzrRJfQYZA5GPnVZzavB" >/dev/null 2>&1 &
方法二:生成service文件
#设置你的运行监听端口,可通过ip:端口访问程序(需要打开防火墙,如果用域名访问,不建议打开防火墙),端口自定义
port="10800"
cat > /etc/systemd/system/onelist.service <<EOF
[Unit]
Description=onelist
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/OneList/OneList -bind 0.0.0.0 -port ${port} -C "0edc178e-5e24-4daa-bdd9-b083aebca21c" -S "DzI8Q~uZBVGtASLiXcDQkzrRJfQYZA5GPnVZzavB"
Restart=on-failure
[Install]
WantedBy=multi-user.target
EOF
systemctl start onelist
systemctl enable onelist

主题文件

1、HaorWu主题
#特点
支持移动端自适应
支持当页搜索
支持按文件名, 日期, 大小排序
支持主动查看图片
支持在线播放视频
cd /usr/local/OneList
wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/%40Theme/HaorWu/index.html

2、jackjieYYY主题

#特点
支持移动端自适应
支持当页搜索
支持按文件名, 日期, 大小排序
支持在线播放视频
cd /usr/local/OneList
wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/%40Theme/jackjieYYY/index.html

相关命令

#设置开机自启后的命令
启动:systemctl start OneList
停止:systemctl stop OneList
重启:systemctl restart OneList
查看状态:systemctl status OneList
#卸载
systemctl stop OneList
systemctl disable OneList
rm -rf /usr/local/OneList /etc/systemd/system/OneList.service

域名访问

Nginx 反代配置

    location ^~ /onedrive/ {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_pass http://127.0.0.1:5288;
    }

Client/Secret (2024/5/14)

# 国际版: 78d4dc35-7e46-42c6-9023-2d39314433a5| ZudGl-p.m=LMmr3VrKgAyOf-WevB3p50
# 国际版:0edc178e-5e24-4daa-bdd9-b083aebca21c
|DzI8Q~uZBVGtASLiXcDQkzrRJfQYZA5GPnVZzavB
# 中国版: dfe36e60-6133-48cf-869f-4d15b8354769| H0-1:6.Sb8:WCW/J-c][email protected][i0EZ2
# ReplyURL: http://localhost/onedrive-login 

Github项目

项目地址:Github

老黑
  • 本文由 发表于 2022年5月14日12:50:49
  • 转载请务必保留本文链接:https://www.ixmu.net/article/421.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: