腾讯SCF免费搭建Onedrive网盘

  本文最后更新于2019年09月09日;------ Ps: 转让宝塔面板专业版永久授权20人版.

腾讯SCF免费提供一定量的服务,完全可以利用其来搭建一个属于自己的Onedrive

准备

  • 一个腾讯云账号(需实名)
  • 一个Onedrive账号(个人版亦可,但是建议购买5T版

创建云函数

  • 登录腾讯云函数平台,新建一个云函数,注意如果域名未备案请选择香港、新加坡地区,当然如果你喜欢,也可以选择阿三。
  • 函数名称随便写,运行环境选择PHP7.2;创建方式选择模板函数;模板选择helloworld模板;下一步直接完成。
  • 下载程序OneDrive_SCF,进入该函数服务选择函数代码,提交代码选择本地上传文件夹,上传刚才解压的文件夹。
  • 添加触发方式,选择API网关触发器,勾选启用集成响应,保存
  • 然后会生成一个访问路径,打开。点击Get a refresh_token,登录微软账号。
  • 跳转到localhost开头的一个无法访问的网站,用前面API访问路径替换localhost,得到refresh_token
  • 进入函数服务,打开函数代码,找到index.php大概在16行,把refresh_token复制进去
  • 打开函数配置--右上角编辑,配置内存128.512.1024都可以,超时时间填写30,然后添加变量,然后保存
sitename=站点名称
private_path=Onedrive根路径(绑定自定义域名使用)
public_path=Onedrive根路径(未绑定自定义域名使用)
passfile=.password(加密文件)
admin=管理员密码

绑定自定义域名

  • 打开函数的触发方式,点击服务名,选择自定义域名,新建
  • 选择域名、外网、http与https,证书选择在腾讯云申请的证书,自定义路径映射,填写"/",选择发布
  • 打开上文提到的index.php,在609行左右加上如下代码
<script>
  if (location.protocol === "http:") {
    location.href = location.href.replace(/http/, "https");
  }
</script>
  • 访问域名应该就可以正常使用了

PS:如果域名不能正常访问请打开API管理,编辑,检查路径是否为"/"。以上操作基于两个腾讯云服务云函数API网关

- THE END -