前言
通过在环境变量中手动添加Region值来暂时解决无法使用腾讯云函数创建OneManager的问题。
大部分Onedrive的个人网盘都需要使用VPS服务器来搭建,本文所涉及的腾讯SCF云函数算是个例外。前几天腾讯云函数的api调用url更新了导致没法直接从url获取Region,因此简单更新了一下,需要自己将Region添加到环境变量中。
2019年12月4号起,腾讯云函数流量开始收费了,但仍存在一定的免费额度,日常使用应该是够了。故称之为“0成本”。
官方文档提示,配置128MB内存,每月可免费使用3,200,000秒>2,678,400秒(31*24*60*60),所以基本只要注意调用次数<100万次就可以了。
所需材料
- OneDrive账号
- 腾讯云账号
- OneManager-php源码-先呈上项目OneManager-php.
部署准备
获取OneDrive账号
OneDrive账号分为很多种,有国际版与国内的世纪互联版,国内的话世纪互联速度较快、也较稳定。容量一般在5T,可扩容至25T,比较适合用来搭建个人分享网盘(和限速的**云说拜拜)
注册腾讯云账号
登录腾讯云官网免费注册账号,并完成实名认证。
获取API密钥
- 登录腾讯云控制台 - 访问管理
- 访问密钥 - API密钥管理(弹窗点击“继续使用”就行)
- 新建密钥,得到
SecretId
和SecretKey
,粘贴到记事本(目的是要记录下来)
获取OneDrive_SCF源码
访问Github项目OneManager-php,点击Clone or download
- Download ZIP
,获取源码。
配置部署SCF云函数
新建函数
- 登录腾讯云控制台 - 云函数
- 选择
函数服务
-自己选地区
-新建
推荐选香港,问题好像少点。
- 填写函数名称(自定义),
运行环境
-Php 7.2
,创建方式
-空白函数
,点击下一步
- 函数配置页,拉到最下面,点击
高级配置
,在环境变量
处填写SecretId
、SecretKey
和Region
,注意大小写和对应关系,点击完成
Region值根据自己所选地区,参考官方地域列表取值填写。
上传函数代码
函数代码
- 提交方法
- 本地上传文件夹
- 上传
- 保存
注意,解压后查看一下是否包含两层文件夹,如果是,上传内层。
添加触发方式
- 触发方式 -
API网关触发器
- 启用集成响应 - 勾选
- 其他保持默认
项目安装
- 点击生成的
访问路径
- 在新标签页出现Error提示,点击下方的
Click to install the project
选择语言
- 选中文(别的也行),设置管理员密码
- 等待跳转到首页
挂载OneDrive网盘(支持多盘挂载)
请参考OneManager:免VPS使用heroku+OneDrive搭建网盘目录程序
常见问题
- 安装过程中出现
{"errorCode":-1,"errorMessage":"Task timed out after 3 seconds"}
:别慌,刷新一下就好。
文章评论
搭建成功,十分感谢
我想问下这样搭建后是不能使用自定义域名的对吗?
可以自定义。不过域名需要呗案。
怎样绑定域名呢
博主 报这个错了
Error
InvalidParameterValue
A value specified in `Region` is not valid, is unsupported, or cannot be used.
function_name:helloworld-1612433335
Region:hk
namespace:default
@Jack-Roc 应该更新了。
笨猫大佬我在大建过程中出现的问题不知道哪里解决
401
{
"error": "invalid_client",
"error_description": "AADSTS7000215: Invalid client secret is provided.\r\nTrace ID: 1dd25943-49bb-482e-9ebc-189d2a37fc02\r\nCorrelation ID: e948c739-597f-4a8d-98be-159f309f3e4a\r\nTimestamp: 2021-07-13 06:19:40Z",
"error_codes": [
7000215
],
"timestamp": "2021-07-13 06:19:40Z",
"trace_id": "1dd25943-49bb-482e-9ebc-189d2a37fc02",
"correlation_id": "e948c739-597f-4a8d-98be-159f309f3e4a",
"error_uri": "https:\/\/login.microsoftonline.com\/error?code=7000215"
}
如能解答感谢不已 :xinsui:
已解决 2021/7/13 发方法依旧可以使用