Cloudflare 搭建免费云盘
可以做个人免费云盘,核心依靠 R2 对象存储 + Workers/Pages + 开源网盘前端,零出站流量费,但是有免费额度上限,不是无限空间Cloudflare
📦 免费套餐额度(单账号)Cloudflare
- R2 存储:10GB 免费存储空间
- A 类操作(写 / 上传 / 新建):每月 100 万次
- B 类操作(读 / 下载):每月 1000 万次
- ✅ 没有出站流量费用,下载多少流量都不花钱
- Workers:每日 10 万次请求免费,足够个人网盘使用
超过 10GB 存储后,$0.015/GB/ 月计费,价格很低Cloudflare。
下面使用 FlareDrive 搭建
FlareDrive‑R2 完整部署教程(Pages版本,最简单)
项目地址:https://github.com/willow‑god/FlareDrive‑R2 ⚠️前置:Cloudflare账号必须绑定支付方式(不会扣费,只是开通R2);准备一个GitHub账号。 ⚠️国内网络:网盘网页大陆无法直连访问,需要代理环境打开。免费R2额度:10GB存储空间。
步骤1:Fork项目到你的GitHub
- 打开上面的github仓库
- 点右上角 Fork → 创建复刻,把仓库复制到你自己的GitHub账号下,保持只复制main分支即可。
步骤2:Cloudflare后台创建R2存储桶
CF左侧菜单找到 R2 对象存储 → 创建存储桶
桶名字小写英文,例如
mypan,直接点创建存储桶。进入桶的【设置】→【R2.dev子域】→ 允许公开访问,开启后复制生成的公共URL,格式:
https://pub‑xxxxxx.r2.dev,把这个链接复制保存好,后面要用。⚠️只是开启R2.dev子域,不要设置存储桶完全公开读写!文件权限由FlareDrive程序控制,不然所有人可以读写你的文件。
步骤3:Cloudflare Pages导入GitHub仓库
CF左侧找到 Pages → 创建应用程序 → 连接到Git
选择你刚刚fork的
FlareDrive‑R2仓库构建设置全部保持默认,不要修改构建命令,直接点保存并部署。
第一次构建大概率失败,是正常现象,因为还没配置环境变量,后面配置完重新部署即可。
步骤4:配置环境变量(最重要)
进入 Pages项目 →【设置】→【环境变量】→ 添加生产环境变量:
| 变量名 | 值示例 | 说明 |
|---|---|---|
| PUBURL | https://pub‑xxxxxx.r2.dev |
粘贴你R2桶的公共URL,必填 |
admin:你的密码 |
* |
管理员账号,格式:admin:123456 值写*代表全部读写权限,必填 |
示例:变量名称填
admin:mypassword123,变量值填*登录网盘时用户名:admin,密码:mypassword123
可选变量(可以不填)
GUEST:public/游客未登录可以访问public文件夹
步骤5:绑定R2存储桶
Pages项目 →【设置】→【函数】→【R2存储桶绑定】
- 绑定变量名称必须大写
BUCKET - 存储桶:选择你刚才创建的R2桶 → 保存。
步骤6:重新部署生效
- 回到Pages【部署】标签页,点击【重新部署】,使用最新环境变量。
- 等待构建完成(1‑3分钟)。
- 访问Pages给你的域名(xxx.pages.dev),输入你设置的 admin账号密码,进入网盘。
✨额外功能:WebDAV挂载
地址:https://你的pages域名/dav 账号密码就是你设置的管理员账号密码,Windows、Mac、Rclone都可以挂载这个网盘磁盘。
⚠️常见踩坑&排错
- 登录提示密码错误:环境变量格式错!变量名严格
admin:密码,值是*,不要搞反。 - 上传文件失败:确认R2绑定变量名是大写
BUCKET;PUBURL复制完整,末尾不要多余斜杠。 - 大文件上传失败:Workers/Pages有单文件限制,大于100MB建议用Rclone WebDAV分片上传。
- 国内打不开网站:Cloudflare Pages域名中国大陆无法直连,需要代理;可以绑定自己域名,但依然国内访问受限。
- 存储上限:免费R2只有10GB,超过按流量计费,不要存违规内容,会直接封号丢数据。
可选:绑定自己域名
Pages设置 →【自定义域】添加你托管在Cloudflare的域名,访问自己域名打开网盘。
如果你部署遇到报错,可以把报错截图或者文字发给我,帮你定位。
补充:如果你想要搜索文件功能,原版FlareDrive‑R2不需要D1数据库,开箱即用;D1是原版FlareDrive才需要,普通个人网盘不需要配置D1。
本作品采用《CC 协议》,转载必须注明作者和本文链接
关于 LearnKu