一句话总结:一套完整的多用户商务网盘 SaaS 系统正式开源,基于 Cloudflare Workers + Hono + D1 + R2 构建,全部跑在 Cloudflare 免费额度上,0 服务器成本。自带会员订阅、在线收款(微信 / 支付宝 / 数字人民币 / USDT)与功能齐全的管理后台,注册一个 Cloudflare 账号,约 10 分钟就能拥有属于你自己的付费网盘生意。
很多朋友想做一个自己的网盘产品:给客户交付资料、团队共享文件、或者直接卖会员空间变现。但传统方案意味着租服务器、挂硬盘、配带宽、防盗链、担心流量账单……这个开源项目把整套系统全部搬到 Cloudflare 边缘网络上,没有服务器、没有运维、没有固定成本,访问速度还快——因为你的网盘天然部署在全球几百个边缘节点上。
一、在线案例与源码
- 在线案例:https://pan.aibochinese.com(可直接注册,完整体验用户端流程)
- 开源源码:github.com/aibochinese001/Bdrive-open-worker(欢迎 Star / Fork / 提 Issue)
二、项目简介
Bdrive-open-worker 是一个多用户商务网盘系统:不止是「能存文件」,而是一套可以直接对外运营的 SaaS 产品——用户注册后获得免费空间,升级会员解锁更大容量和更大单文件限制;管理员在后台管理用户、套餐、订单与站点设置;收款通过易支付协议一次接入,支持微信、支付宝、数字人民币与 USDT 四种通道,可独立开关。
三、核心功能一览
1. 用户系统
- 邮箱注册登录,JWT + HttpOnly Cookie 认证,防 XSS 窃取
- PBKDF2(SHA-256,10 万次迭代)密码哈希,不存明文
- 账号封禁 / 解封、管理员角色权限分离
2. 网盘核心
- 基于 R2 的流式上传 / 下载,支持 HTTP Range——视频、音频可直接拖动进度条,大文件支持断点续传
- 完整的文件夹树:递归 CTE 面包屑导航、移动时自动防循环、文件夹递归删除
- 文件重命名、关键词搜索
- 存储配额与单文件大小双重限制,免费版与会员套餐各不相同,管理员还可对单个用户单独覆盖配额
3. 分享外链
- 自定义提取码、有效期、下载次数限制,三项可任意组合
- 文件夹可整包分享:对方可在线浏览目录结构,也可整包下载
- 公开分享页无需登录即可访问,适合对外交付场景
4. 会员订阅体系
- 套餐周期灵活:按天 / 月 / 年 / 永久
- 不同套餐对应不同的总空间与单文件大小权益
- 会员到期时间与续费叠加逻辑完整,续费自动顺延
5. 易支付收款
- 标准易支付协议(MD5 签名,ksort + 密钥),兼容市面上绝大多数易支付平台
- 微信 / 支付宝 / 数字人民币(默认 type=dcep)/ USDT(默认 type=usdt)四种通道,均可在后台独立开关、自定义 type 参数
- 异步通知双重校验:验签 + 金额比对,条件 UPDATE 保证订单幂等激活,杜绝重复开通与伪造回调
6. 管理后台(/admin/)
- 数据仪表盘:用户数、订单数、收入等核心指标一目了然
- 用户管理:调整角色、封禁、修改配额、手工开通会员、重置密码、删除
- 套餐管理:套餐增删改查、上下架
- 订单 / 文件 / 分享链接全量管理
- 站点设置与易支付参数配置(网关地址、商户 PID、密钥)
四、技术栈
| 层 | 服务 | 说明 |
|---|---|---|
| 运行时 | Cloudflare Workers | Hono 框架 + TypeScript,全球边缘节点运行 |
| 元数据 | Cloudflare D1 | Serverless SQLite,存用户 / 文件索引 / 订单 |
| 对象存储 | Cloudflare R2 | 存文件本体,流量免费,无出口带宽费 |
| 前端 | 静态 HTML + 原生 JS | Workers Assets 托管,无构建依赖 |
五、为什么能做到 0 成本?
传统网盘的成本大头是服务器 + 带宽 + 存储三件套,而 Cloudflare 免费套餐恰好把这三项都兜住了:
- Workers 免费版:每天 10 万次请求,个人运营期绰绰有余
- D1 免费版:5GB 存储 + 每天数百万行读取,元数据完全够用
- R2 免费版:10GB 存储额度,且流量(出口带宽)永久免费——这一点是对比 AWS S3 最大的优势,用户下载文件再多也不产生流量账单
也就是说,项目冷启动阶段的固定成本是 0,只有当业务规模真正长大后,才需要按量付费升级,而那时你大概率已经在收会员费了。
六、部署步骤(约 10 分钟)
项目提供了 AI Agent 友好的一键部署指南,也可以按下面四步手动完成:
npm install安装依赖,然后npx wrangler login登录你的 Cloudflare 账号npm run setup—— 自动创建 D1 数据库、回填配置、应用数据库迁移npx wrangler secret put SESSION_SECRET设置 32 字节以上的随机会话密钥npx wrangler deploy部署上线,绑定自定义域名即可对外服务
成为管理员:部署后先注册一个账号,再用 wrangler d1 命令把该用户角色更新为 admin,即可进入 /admin/ 后台。
配置收款:在后台「易支付设置」填写网关地址、商户 PID 与密钥,回调地址设为 /api/payment/callback 即完成接入。
七、安全设计要点
- 支付回调同时验签 + 校验金额,条件 UPDATE 保证幂等,防止伪造通知与重复激活
- 文件访问强制归属校验,不存在越权下载
- 分享链接 = 提取码 + 有效期 + 次数限制三重控制
- 生产环境建议使用强随机 SESSION_SECRET 并启用 HTTPS 自定义域
八、适用场景
- 付费网盘创业:卖会员空间,四种支付通道通吃国内外用户
- 资料交付:课程、素材、软件包对外交付,分享链接自动过期防盗传
- 团队 / 企业内部网盘:私有部署在自家 Cloudflare 账号下,数据自主可控
- 开发者练手:完整学习 Workers + Hono + D1 + R2 全家桶的工程化实践,代码结构清晰,模块划分规范
项目已开源,点个 Star 支持一下:github.com/aibochinese001/Bdrive-open-worker。部署过程中遇到问题欢迎在评论区留言交流。
评论区
0 条评论 · 评论需审核通过后显示
发表评论