2020-02-27更新:作者已经将OneDrive_SCF项目转到新项目OneManager-php。之前安装Onedrive_SCF的可以直接在设置界面一键更新到最新版的OneManager-php,重装后需要再次手动添加网盘。
API网关也开始计费了,不过还是那句话,免费额度够用。
暂时弃坑,先把OneManager-php装在VPS上了。
文章传送门:


## 前言 ##
此法是在腾讯云云函数上使用相应的网页配合微软的onedrive存储服务来实现的文件在线预览以及下载功能。

SCF简介

云函数SCF是无服务器执行环境,只需使用平台支持的语言编写核心代码并设置代码运行的条件,代码即可在腾讯云基础设施上弹性、安全地运行。使用云函数SCF的意义在于成本很低,文件下载预览用的都是onedrive服务器流量,我们在SCF上搭建好网盘后每次访问实际只需要消耗几十K流量,而且腾讯云提供的也有免费的额度,足够我们使用。
免费额度
关于onedrive网盘,申请微软账户赠送5G免费容量。如果想要5T容量的那种,请自行购买,在此不推荐任何一加店铺。如果仅仅存些电影资源,网上几块钱那种5T的盘足够用了,虽然服务器不在国内(这样的话网盘内容也不会遭受审查),但是使用起来体验并不算差,要相信大厂的优化能力。如果要求更稳定的下载速度,可以购买世纪互联版的。本人博客的那个网盘用的就是世纪互联版的onedrive,大家可以体验下。
并且感谢Tai7sy大佬的开源项目OneDrive_SCF

准备

1.一个onedrive账户。
2.腾讯云账户。

需要在腾讯云中做的工作

首先打开腾讯云官网完成注册账号和实名认证操作。
之后进入云函数介绍界面,点击右边那个箭头进入云函数控制台。

首次使用会提示要授权,授权即可:

之后点击函数服务那一项,选择一个地区然后点击创建函数。建议选择香港地区,因为这样以后绑定域名以及安装过程中都比较方便。
如图
点击新建函数,名称随意,符合标准即可;运行环境选择php7.2;模板选择helloword。之后点下一步,在下一个界面不用任何操作,直接点击完成即可。
如图
之后点击函数代码选项,提交代码方式选择本地上传文件夹,下载并解压OneDrive_SCF-master.zip随后点击上传,选择解压好的文件夹,最后点击保存。注意,解压后查看一下是否包含两层文件夹,如果是,上传内层。(PS:不知道为啥这个链接实际上下载下来的是老版本的那种,安装起来没有新版的方便,建议直接用我修改的那个版本的。安装好用密码登录后台,需要更新网页程序可以直接在后台一键更新!)
如图
如果在手机上操作不太方便,可以下载本人修改过的zip包。(点我下载)然后直接选择本地上传zip包的方式来上传代码。记得保存
如图
此界面代表成功
点击触发方式界面。点击添加触发方式,触发方式选择API网关触发器,以及在启动集成响应后面打勾。然后点击保存。
如图
之后添加环境变量。找到函数配置,点击右上角编辑选项添加环境变量。至于内存那个选项,,将内存修改为 512M,当然128M也是可以运行的,需要说明的是,内存越大可用的免费时长越少;超时时间填写30。
如图
如图
环境变量里的SecretId与SecretKey(在 https://console.cloud.tencent.com/cam/capi 这里生成),
必填环境变量:
SecretId :腾讯云API 的 SecretId。
SecretKey :腾讯云API 的 SecretKey。

安装时程序自动填写(不用我们手动添加):
Region :SCF程序所在地区(暂用,只能从API网关长链接读出来用,gz不适用。选择香港地区程序可以自动填写这一项)
Onedrive_ver :Onedrive版本
language :程序显示的语言
t1,t2,t3,t4,t5,t6,t7:把refresh_token按128字节切开来放在环境变量,方便更新版本。

以下为非必需填写的向量:
sitename :网站的名称,不添加会显示为‘请在环境变量添加sitename’。
admin :管理密码,不添加时不显示登录页面且无法登录。
passfile :自定义密码文件的名字,可以是'pppppp',也可以是'aaaa.txt'等等;
  密码是这个文件的内容,可以空格、可以中文;列目录时不会显示,只有知道密码才能查看或下载此文件。
实际不止这么多变量,有兴趣去可以作者github看看。

登录账号设置相应信息

现在再次点击触发方式,复制访问路径那个链接到浏览器并打开。
如图
首先选择语言为中文,然后点击确认按钮。
如图
之后选择账户类型,点击下一步。本人借朋友的账号(他的onedrive账户属于office365家庭版自带1T空间类型。买的5T空间和edu邮箱注册的应该也是选择第一种)演示,选择了第一种账户类型。
如图
之后就是登录onedrive账户,询问是否允许此应用访问你的信息点击确定即可。接下来的步骤程序会自动完成,会自动帮你在云函数设置写好相关变量。等十几秒钟后就安装完成了。
如图
如图

你的网盘的链接就是触发方式那里的访问链接。
网盘部分功能示例(登录后操作):
先点击设置
有更新时会提示并且有个按钮点击后可以直接一键升级
加密功能
加密效果
进阶(绑定域名)。
先占坑,回头慢慢写……

Last modification:February 27th, 2020 at 01:38 pm