Alist使用cloudflare workers为OneDrive国际版下载加速


笔记4240 阅12 评

又又又开始折腾啦!这一个星期日志屿一直没有闲着,虽然博文发的比较少了,但旗下的伯虎网一直也没有断更。之前因为Alistv2.1由于天翼网盘添加账号添加不上,就没有再使用它了。昨天Alist程序更新到了2.2版本,去作者网站一看这次添加了一些新的功能,有站点公告、有天翼网盘PC端授权。嗯,经过昨晚顺利用上了。

其实,折腾来折腾去也没有尝试过许多网盘程序,貌似有其他的OneDrive网盘挂载程序也是支持中转代理的。这里理一下使用Alist利用cloudflare workers为OneDrive国际版下载加速的方法。至于有什么缺点没有?暂未可知,知道的博友可以说一下。

效果对比

由此可见效果很明显,可以看到下载的url也随即变动,说明正常经过了cloudflare中转服务器。

简明教程

Alist官方文档是有教程的,但如果不是个人开发者也不一定能搞得明白,比如我这样的。

教程前提:注册好cloudflare账号、安装好Alist并正常挂载OneDrive。

注册cloudflare地址:https://dash.cloudflare.com/login

如果你不是组织管理员可能按照Alist官方教程或许不会成功,但你可以参考这里的教程:https://pt.noki.icu

教程正式开始

1.登录cloudflare进入后台,左侧选择Workers选项卡,首次登录会要求创建子域(必需)。
2.创建服务——填写服务名称——选择启动器——创建服务。
3.创建好服务后,返回Workers选项卡中你会看到创建好的服务。
4.编写workers代码,适用于Alist网盘程序(其他支持中转代理的程序也可以,代码会不一样)
5.在Workers选项卡中,点击进入创建好的服务选择右侧的快速编辑
6.在打开的编辑页面左侧填写编写好的workers代码粘贴保存并部署即可。
7.Alist后台挂载OneDrive选项卡中填写好down_proxy_url,cloudflare你创建 workers服务的路由url。如:https://one.fuliyun.workers.dev
8.Alist后台挂载OneDrive选项卡中开启代理,旧版本是proxy选项,新版本是代理选项。

workers代码如下

https://github.com/alist-org/alist-proxy/blob/main/alist-proxy.js
// 代码中的注释
HOST: 你的Alist地址,必须添加协议头,且后面不能添加/。如https://yun.boyhu.cn;
TOKEN:参见Alist部分的Token。
// 代码中的注释结束

记录完毕,看不懂的勿怪,请多参考官方文档。体验地址:https://yun.boyhu.cn/OneDrive

官方相关文档:https://alist-doc.nn.ci/docs/driver/base#proxy代理相关

最后更新 2023-08-27
评论 ( 12 )
OωO
隐私评论
  1. 天意

    您好,我使用的是alist3.18.0,请问挂载的时候需要开启web代理吗,以及webdav的策略选择302还是本地还是代理地址?我发现不开启web代理的时候下载前缀是https://public.dm.files.1drv.com且填写worker地址是无效的,而开启web代理后虽然下载地址变为worker地址了,但是下载始终无法连接,worker代码中我填写的地址和token我认为是没有出错的

    9个月前江苏省回复
    1. @天意

      官方有详细的说明呢!
      proxy关、webdav_proxy关:文件下载请求完全不走服务器。
      proxy开、webdav_proxy关:网页上的预览、直链下载都走服务器,但webdav下载不走服务器。
      proxy关、webdav_proxy开:网页上的预览、直链下载不走服务器,但webdav下载走服务器。
      proxy开、webdav_proxy开:网页预览、直链下载和webdav下载都走服务器。

      9个月前重庆市回复
  2. zsswwz

    请问host地址填写的是公网地址还是局域网地址呢?

    1年前甘肃省金昌市回复
    1. @zsswwz

      公网的哈,局域网ip没办法代理的

      1年前重庆市回复
  3. 大块黄油

    请教下这里HOST: 你的Alist地址,必须添加协议头,且后面不能添加/。如https://yun.boyhu.cn
    比如我的域名是XXXXXX.TOP,这里填的就是https://XXXXXX.TOp;?而不是https://XXXXXX.TOP:5244?
    我cloudflare开了代理后就无法访问了,关了代理后只能http访问

    1年前江苏省苏州市回复
    1. @大块黄油

      查询一下端口绑定或者反向代理有没有加端口

      1年前重庆市回复
  4. 111

    之前用alist文档死活挂不上令牌。晚点试试这个

    1年前浙江省温州市回复
    1. @111

      可以的,自行测试下,很久没折腾了

      1年前重庆市回复
  5. Earendil

    想问一下大佬,你配置好worker后,右边的get也是返回301至百度吗
    直接访问worker网址有内容吗
    (因为我按照教程配置了,代理一直无法生效,想来控制变量找找原因)

    2年前浙江省杭州市回复
    1. @Earendil

      不太清楚了,我折腾很久了,但是Token一定不能错

      2年前重庆市回复