前言

在上一篇文章中,我搭建了一个rclone 实现onedrive在windows中上传下载文件,按理说是可以触发office的api的,在网上爬文,发现了onemanager
onemanager是一款强大的OneDrive目录列表程序,支持的功能比OneIndex更多。支持无服务器一键搭建,支持腾讯SCF服务搭建,基本上能用的搭建方式都支持,而且支持OneDrive商业版、OneDrive个人版和世纪互联版。支持多盘绑定,支持访客上传文件,图床模式,可以让访客上传文件做为图床使用,非常的方便。

快速开始

注册

GitHub开源网址:https://github.com/qkqpttgf/OneManager-php

进入到github中,可以看到这个醒目的button,这篇文章正是利用heroku搭建免费的onemanager,不需要其他的服务器和主机。
点击那个按钮,进入注册(需要富强,注册引入了google人机验证),qq邮箱已被屏蔽,推荐使用gmail

创建app

  • 在“App name”填写您的应用名称,“Choose a region”选择一个服务区域选择“United States”。 注意:“App name”填写的应用名称就是您次域名.herokuapp.com的前缀,名称必须以小写字母开头

  • 点击“Deploy app”部署应用稍等片刻即可完成初始化。再点击“Manager APP”管理应用程序

  • 点击“Setting”设置应用,直接往下拉在“Domains”处可以看到您的次域名(如果您已经填加了信用卡账户已验证,可以绑定自己的域名)点击您的次域名。


  • 单击此处“Click to install the project”安装OneManager-PHP项目

  • 点击“新建API Key”获得API,在“API Key”处点击后面的“Reveal”显示您的API Key,复制API Key粘贴至API Key。“Set admin password”设置管理员密码,点击“确认”。


  • 安装完成后登陆➠管理➠设置,添加OneDrive盘。



  • 选择“MSC:国际版,自己申请应用ID与机密”,点击“申请应用ID与机密”。申请教育版的OneDrive账户即可申请获取ID和钥密,目前普通帐号也已经可以申请获取应用ID和钥密。



  • 将获取的应用机密和应用ID分别填入client_secret和client_id,点击“确认”。之后就会跳转到下买你的界面

反向代理,自选cloudflare节点

由于heroku不绑定信用卡,就不能自定义域名。我觉得在heroku上绑卡没必要。所以我利用了cloudflare的workers功能实现了自定义域名。

首先你需要把域名添加进cloudflare,有两种方式,一种是通过dns接入,这种方式完全把域名交给cloudflare了。另一方式是通过cloudflare Partners的方式,这种方式可以不用dns接入。我是用的是萌精灵,详细的cf自选节点方法参见:cloudflare自选节点

  • 进入萌精灵,登录你的cloudflare账号,添加域名。

  • 添加好域名后就需要进入cloudflare,进入你刚才添加的域名中,找到workers->manager workers,第一次要叫你设置一个域名你需要设置的前缀(默认为你邮箱前缀).workers.dev

  • create a worker

  • 将下面的代码加入左边方框中,注意修改为自己的app名称
1
2
3
4
5
6
7
8
9
10
addEventListener(
"fetch",event => {
let url=new URL(event.request.url);
url.hostname="应用名称.herokuapp.com";
let request=new Request(url,event.request);
event. respondWith(
fetch(request)
)
}
)

  • 完成后返回这里,点击添加route

  • 添加一个route,格式为前缀.你的域名/*,比如pan.gyh.im/*,worker选择你刚才创建的

  • 回到萌精灵中添加一个cname记录,将你添加的route域名,解析到分配的workers域名中。

  • 然后在你的域名dns提供商哪里,添加下面的解析记录

  • 最后你可以指定clodflare的访问节点,不需要用cloudflare分配的节点了,分配的节点一般较慢。只需再添加一个A记录,比如我这里是添加的pan.gyh.im A记录到1.0.0.1
  • 具体可以指定到哪些节点可参考这里
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
适合电信的节点
104.23.240.*
走欧洲各国出口 英国德国荷兰等 延迟比美国高一些 适合源站在欧洲的网站
172.64.32.*
虽然去程走新加坡,但是回程线路的绕路的,实际效果不好,不推荐
104.16.160.*
圣何塞的线路,比洛杉矶要快一点,推荐
108.162.236.*
亚特兰大线路,延迟稳定,但是延迟较高

适合移动的节点
162.158.133.* 走的丹麦,这一段ip只有部分能用,可以自己试一下。绕美国。
198.41.214.*
198.41.212.*
198.41.208.*
198.41.209.*
172.64.32.*
141.101.115.*
移动走香港的IP段有很多,以上并不是全部。CF移动走香港的分直连和走ntt的效果都挺不错的,不过部分地区晚上还是会丢包。
172.64.0. 这是走圣何塞的,一般用香港的就行
172.64.16.* 欧洲线路.绕

1.0.0.1效果较好
电信部分
大多数省直接使用1.0.0.0即可,延迟低,丢包少,
少部分还是需要换ip

https访问

添加如下页面规则

http://domain/*也可换成domain/*,也就是可以不要下图中的http

参考资料