一个跑在 Cloudflare 上的
Serverless 云盘与图床
零服务器、零构建、零运行时依赖。Fork 一下,绑两个资源,5 分钟上线。
前往仓库部署0
服务器
0
构建
0
运行时依赖
7
种存储后端
10 GB
单文件上限
CC0 1.0
版权协议
三个零
零成本
完全跑在 Cloudflare 免费额度内:Pages 托管、KV 元数据、R2 存储、D1 数据库、Functions 计算,不花一分钱。
零运维
没有服务器、没有 Docker、没有 Nginx、没有数据库要养。没有构建步骤,git push 即部署。
零运行时依赖
运行时代码只有标准 Web API。没有 npm 生产依赖,没有 CVE 要追。唯一依赖是 wrangler(开发用)。
核心能力
上传
- 拖拽 / 粘贴 / 批量上传
- 命令行直传(零 npm 依赖)
- URL 转存(带 SSRF 防护)
- 分片上传,单文件最高 10GB
- 智能节点选择,超阈值切换
分享体系
- 分享落地页 /s/:slug
- 密码保护、有效期、次数上限
- 预览不计次,下载才计次
- 失效原因明确提示
管理后台
- 目录树与批量操作
- 用量监控(KV / R2 实时)
- API Token 发牌 / 轮换 / 吊销
- 运行时配置改完即时生效
密码库 /vault.html 采用零知识加密:主密码经 PBKDF2 派生密钥,整库在浏览器本地用 AES-GCM 加密后才落盘,主密码与密钥从不保存或上传。隔空投送支持 8 位连接码、单收端锁定、TTL 5 分钟、传完即焚。机器接口提供 REST API v1、MCP 端点与 OpenAPI 定义。
七种存储后端
| 后端 | 单文件上限 | 说明 |
|---|---|---|
| Cloudflare R2 | 10GB | 唯一原生分片,大文件首选 |
| Telegram | 20MB | 默认后端,一个 Bot 就能用,完全免费 |
| S3 兼容 | 40MB | AWS S3 / MinIO / B2 / 阿里云 OSS… |
| WebDAV | 40MB | 对接 alist / OpenList / NAS / 坚果云 |
| GitHub | 40MB(contents 20MB) | 存到仓库 / Release |
| HuggingFace | 35MB | Dataset 仓库 |
| Discord | 25MB | 频道存文件 |
指定后端未配置时回落 Telegram;变量缺失不会静默降级到其他后端,而是直接报错。
安全
管理面 fail-closed:未配管理员账密时管理接口一律 503,绝不默认对公网开放。
URL 导入 SSRF 防护:拦私网 / 回环 / 云元数据 169.254.169.254,每次重定向重新校验。
Token 策略:allowedStorages / allowedMimeTypes / maxFileSize / folderPrefix 等细粒度控制,哈希存储、恒定时间比较。
部署
- Fork 仓库到你的 GitHub 账号。
- 绑定 KV / R2 / D1 三个 Cloudflare 资源。
- 设置环境变量(填一次即生效)。
- 执行
npm run pages:deploy或npx wrangler pages deploy .。 - 打开站点验证上传与分享。
可把本站当 WebDAV 主机挂载;D1 为可选,不绑则行为与接入前完全一致,建库只需一条命令 bash scripts/setup-d1.sh。