前言
OneDrive的网盘程序介绍过很多款,但是都是需要VPS服务器来部署,本文将介绍无需服务器,使用腾讯云SCF云函数服务,即可在云端部署你的OneDrive分享云盘.
部署准备
获取API密钥
登陆腾讯云控制台 - 访问管理
API密钥管理 - 新建密钥
获取SecretId
和SecretKey
获取云函数代码
访问项目地址点击download下载并解压缩
部署SCF云函数
新建函数
登陆腾讯云控制台 - SCF云函数
区域选择 - 中国香港 - 新建
填写函数名
运行环境选择Php 7.2
选择空白函数
下一步
拉到下方高级配置
环境变量中分别添加上文获取的SecretId
和SecretKey
完成
上传函数代码
函数代码
提交方法 - 本地上传文件夹
选择刚才解压缩的文件夹保存
触发方式
添加触发方式
- 触发方式 - API网关触发器
勾选
启用集成响应- 其他保持默认并保存
生成访问路径
部署网盘
链接OneDrive
访问生成的访问路径
选择你的OneDrive类型
确认后会弹出登陆OneDrive页面,登陆后等待跳转回即可成功链接.
配置网盘
函数配置 - 编辑为提高访问体验,可将内存可提高至512M或1024M
连接过OneDrive后,此时的环境变量已经自动生成了一些配置,请不要删除
.
继续添加以下环境变量:
- sitename =>
IOIOX网盘
配置站点名称 - public_path =>
/
私有地址访问网盘的文件展示路径,/
为根目录. - private_path =>
/
配置CDN加速域名访问网盘的文件展示路径,/
为根目录. - passfile =>
.password
配置加密功能,目录下有.password
的文件,改目录需密码才能访问. - admin =>
xxxxxxxx
配置管理员密码
配置域名
解析专用域名
为本网盘配置一个二级域名,并解析CNAME到上文生成的访问路径
的前半部分
.
CNAME参考service-ft48dihy-1253567893.ap-hongkong.apigateway.myqcloud.com
自定义域名
触发方式 - 点击API服务名
自定义域名 - 新建
新增自定义域名
- 填写自定义域名
- 协议选择
http和https
- 选择证书,如没有可以
点击前往
免费申请. - 路径映射选择自定义路径,值为
/
和发布
.
管理API - 点击编辑
路径改为/
根目录
下一步
确保启用响应集成
下一步
返回类型选择HTML
完成
前往发布服务
点击发布
发布环境选择发布
备注自定义填写后提交
配置强制跳转HTTPS
函数服务 - 函数代码
- 选择左侧
index.php
- 找到
<head>
标签,在下面粘贴以下代码
强制跳转代码
<script>
if (location.protocol === "http:") {
location.href = location.href.replace(/http/, "https");
}
</script>
部署完成
至此完成以上全部流程,现在可以使用域名来访问网盘了.
结语
腾讯云SCF云函数服务在2020年1月7日正式收费
,免费额度为每月40万GBs资源使用量及100万次跳用次数.而本网盘程序仅仅只是需要耗费调用OneDrive的API请求的资源使用量和次数,来获取文件的直连下载地址.最终上传和下载文件都是直连OneDrive服务器,不会产生额外流量费用,所以免费的额度基本时足够日常使用了
.
44 条评论
创建触发器提示:该操作需要授权
你好师傅,API网关触发器,访问路径那里,点开就是504是什么原因呢
{"errorCode":1,"errorMessage":"Process exited before completing request"}
我解决了,换了一个api密钥
我的也是这个
小白一个,到部署域名那部分就看不懂了,解析专属域名是要进行什么操作呢
MissingParameter
The request is missing a required parameter
Region
.function_name:bilibili2233
Region:hk
namespace:default
为什么啊
调用region