简洁响应快的Onelist+Onedrive搭建免费在线图片视频网盘-配置CDN – 挖站否-挖掘建站的乐趣

personUnknown

之前分享一下OneIndex的程序,可以将Onedrive变成一个网盘,支持上传和下载文件和展示图片等等。不过由于API等原因,用OneIndex搭建的Onedrive在线网盘经常会出现掉线和响应慢的问题,不少的朋友希望可以找到一个更好用的Onedrive应用程序。

Onelist为博主使用Golang重写了OneList,同时支持国际版、个人免费版(家庭版)、中国版(世纪互联)及多网盘绑定,与之前的OneIndex相比功能简化了不少,只剩下了列表展示、图片幻灯片以及视频播放等基本的功能,基本的如上传、管理等都是没有的。

这篇文章就来分享一下Onelist+Onedrive搭建在线网盘的过程,同时用NodeCache CDN加速来解决Onedrive下载速度慢的问题,更多的关于搭建网盘的教程还有:

网站:

  1. 项目:https://github.com/MoeClub/OneList/tree/master/Rewrite
  2. 备用:https://github.com/freehao123/OneList/tree/master/Rewrite

通过下面URL登录 (右键新标签打开)

国际版, 个人版(家庭版)

  1. https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=78d4dc35-7e46-42c6-9023-2d39314433a5&response_type=code&redirect_uri=http://localhost/onedrive-login&response_mode=query&scope=offline_access%20User.Read%20Files.ReadWrite.All

中国版(世纪互联)

  1. https://login.chinacloudapi.cn/common/oauth2/v2.0/authorize?client_id=dfe36e60-6133-48cf-869f-4d15b8354769&response_type=code&redirect_uri=http://localhost/onedrive-login&response_mode=query&scope=offline_access%20User.Read%20Files.ReadWrite.All

同意授权。

然后浏览器会打开一个URL地址,复制保存这个URL。

使用以下命令下载并安装:

新建并进入OneList目录 
mkdir /home/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 
给予运行权限 
chmod +x OneList 
移动 
mv ./OneList /usr/local/bin/

执行以下命令生成配置文件:

国际版 
OneList -a "http://localhost/onedrive-login?code=M.R3.wzfou.com" -s "/od1" 
个人版(家庭版) 
OneList -ms -a "url" -s "/od2" 
中国版(世纪互联) 
OneList -cn -a "url" -s "/od3" 
# 在浏览器地址栏中获取以 http://loaclhost 开头的整个url内容 
# 将获取的完整url内容替换命令中的 url 三个字母 
# 每次产生的 url 只能用一次, 重试请重新获取 url 
# 可以一个盘内的多个文件夹分别映射到多个`SubPath`上 
# 此操作将会自动添加的配置文件 
# 提示 Success! Add config. '/path/to/config.json' 则成功

打开目录就可以看到配置文件了。

同时,你还需要修改一下配置文件,说明如下:

[ 
  { 
    // 如果是家庭版或者个人免费版, 此项应为 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 
  } 
]

下载主题,推荐使用优化后的主题,可以在线播放视频。

#默认 
wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/index.html -P /usr/local/bin 
#优化 
wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/%40Theme/HaorWu/index.html -P /usr/local/bin 
wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/%40Theme/jackjieYYY/index.html -P /usr/local/bin

执行命令运行:

# 保证 config.json 和 index.html 同目录, 直接运行. 
$ OneList 
# 监听公网 80 端口 
$ OneList -bind 0.0.0.0 -port 80 
#或者是 
OneList -bind 0.0.0.0 -port 8080

打开你的IP地址+目录就可以看到Onedrive里的文件了。(点击放大)

Onelist响应速度很快,可以查看图片。

也可以播放视频。

要想使用Onelist接入CDN加速,你先要实现域名访问Onelist。

1、宝塔面板反代
先进入宝塔面板,然后点击左侧网站,添加站点,然后再点击添加好了的域名名称,这时候就进入了站点配置,点击反向代理,目标URL填入http://127.0.0.1:8080,再启用反向代@理即可。至于启用SSL就不说了,直接在站点配置就可以启用。

宝塔面板修教程请参考:

1.新版BT.cn宝塔VPS主机面板建站使用体验-清爽傻瓜式操作功能全面

2、Caddy反代
安装Caddy

wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh 
#备用地址 
wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh 

配置Caddy

#http访问,该配置不会自动签发SSL 
echo "wzfou.com { 
 gzip 
 proxy / 127.0.0.1:8080 { 
    header_upstream Host {host} 
    header_upstream X-Real-IP {remote} 
    header_upstream X-Forwarded-For {remote} 
    header_upstream X-Forwarded-Port {server_port} 
    header_upstream X-Forwarded-Proto {scheme} 
  } 
}" > /usr/local/caddy/Caddyfile 
 
#https访问,该配置会自动签发SSL,请提前解析域名 
echo "ond.wzfou.net { 
 gzip 
 tls [email protected] 
 proxy / 127.0.0.1:8080 { 
    header_upstream Host {host} 
    header_upstream X-Real-IP {remote} 
    header_upstream X-Forwarded-For {remote} 
    header_upstream X-Forwarded-Port {server_port} 
    header_upstream X-Forwarded-Proto {scheme} 
  } 
}" > /usr/local/caddy/Caddyfile 

tls参数会自动帮你签发ssl证书,如果你要使用自己的ssl,改为tls /root/xx.crt /root/xx.key即可。后面为ssl证书路径。

启动Caddy

/etc/init.d/caddy start

就可以打开域名进行访问了。

3、Nginx配置

如果你使用其它的,这里就大概发个Nginx反代配置,直接添加到配置文件即可。

#在配置文件里添加 
location / { 
     proxy_pass http://127.0.0.1:8080; 
     proxy_redirect off; 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    }

如果实现了域名绑定的话,其实是可以添加CloudFlare CDN加速的,这里我们以添加NodeCache CDN来演示,申请NodeCache参考:

1.NodeCache CDN加速-免费亚太节点图片文件加速可自定义SSL证书

先到NodeCache添加域名。(点击放大)

然后会得到CNAME记录,到你的域名DNS处添加CNAME记录解析。

最后打开查看效果。

同时,我们可以看到CDN解析已经自动为我们分配到了亚太节点了,速度提升有效果的。

# /path/to/OneList 为OneList的完整路径 
# 后台运行 
nohup /path/to/OneList -bind 0.0.0.0 -port 80 >/dev/null 2>&1 & 
 
# 开机自启并后台运行 
编辑 /etc/crontab 文件, 并添加下面一行并多按几个回车. (有些系统不留空行会出现意外) 
@reboot root nohup /path/to/OneList -bind 0.0.0.0 -port 80 >/dev/null 2>&1 & 
#未设置开机自启 
rm -rf /opt/OneList 
 
#设置过开机自启 
systemctl stop onelist 
systemctl disable onelist 
rm -rf /opt/OneList /etc/systemd/system/onelist.service

以下为Onelist 使用命令:

Usage of OneList: 
  -a string 
        // 初始化配置文件,添加新配置 
        Setup and Init auth.json. 
  -bind string 
        // 绑定IP地址(公网: 0.0.0.0) 
        Bind Address (default "127.0.0.1") 
  -port string 
        // 绑定端口(HTTP:80) 
        Port (default "5288") 
  -s string 
        // 设置 SubPath 项, 需要与 -a 一起使用. 
        Set SubPath. [unique per account] (default "/") 
  -c string 
        // 配置文件 
        Config file. (default "config.json") 
  -t string 
        // Index.html 目录样式文件 
        Index file. (default "index.html") 
  -cn 
        // 开关 
        // 授权中国版(世纪互联), 需要此参数. 
        OneDrive by 21Vianet. 
  -ms 
        // 开关 
        // 授权个人版(家庭版), 需要此参数. 
        OneDrive by Microsoft.

文章出自:挖站否 https://wzfou.com/onelist/,部分内容参考自:moerats,版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。

Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed

Menu