基于CloudFlare全家桶的图床/视频床,无服务器部署! - 资源荟萃 - LINUX DO

同步来源:树洞剪藏 源站剪藏 ID:431 原文地址:https://linux.do/t/topic/297993
基于CloudFlare全家桶的图床/视频床,无服务器部署! - 资源荟萃 - LINUX DO
set 限制解除
跳到主要内容
话题
我的帖子
关于
友链
即将到来的活动
文档
更多
外部链接
Status
Connect
Channel
Telegram
类别
开发调优
资源荟萃
文档共建
跳蚤市场
前沿快讯
福利羊毛
搞七捻三
运营反馈
深海幽域
所有类别
标签
抽奖
公告
精华神帖
快问快答
人工智能
所有标签
消息
收件箱
频道
常规频道
直接消息
聊天
Default
真诚 、 友善 、 团结 、 专业 ,共建你我引以为荣之社区。 《常见问题解答》
基于CloudFlare全家桶的图床/视频床,无服务器部署!
资源荟萃
12月 17 日
1 / 102
12月 17 日
9 分钟 前
热门回复
Aiu
4 1 天
github.com
GitHub - 0-RTT/JSimages: 基于 Cloudflare R2 储存的图床/视频床服务
基于 Cloudflare R2 储存的图床/视频床服务
修改自我的 telegraph 图床项目,原项目的数据通过TG_BOT上传。
新版完全基于CloudFlare的产品,且功能和界面和先前的一样,使用非常方便!
支持worker && pages部署!使用pages部署可以fork仓库,或者下载_worker.js文件打包成压缩文件上传!
先来了解一下免费套餐的额度。
免费套餐介绍
存储 : 每月 10 GB
A类操作 : 每月 100 万次请求
B类操作 : 每月 1000 万次请求
出口(数据传输到互联网) : 免费
个人使用完全足够!图床默认开启压缩,可以储存更多的图片文件!
如果不需要压缩可以自行修改代码273行,将 enableCompression: true 修改为 enableCompression: false 即可!
功能特点
查看本地历史记录
可选的访客验证功能
单文件最大支持 20MB
支持多文件上传和粘贴上传
支持批量操作和显示上传时间
图片自动压缩(GIF和视频除外)
Cloudflare Cache API 缓存支持
基于 Cloudflare R2 的文件存储
支持多种链接格式(URL、BBCode、Markdown)
支持常见的图片和视频格式(jpg、png、gif、mp4)
部署教程:
- 环境变量说明
需要在 Cloudflare Workers 中配置以下环境变量:
变量名 说明 必填 示例
DOMAIN 自定义域名 是 example.workers.dev
DATABASE D1 数据库绑定变量名称 是 DATABASE
USERNAME 管理员用户名 是 admin
PASSWORD 管理员密码 是 password123
ADMIN_PATH 管理后台路径 是 admin
ENABLE_AUTH 访客验证(设置为 true 开启,不设置或设置为 false 则关闭) 否 false
R2_BUCKET R2 存储桶名称 是 R2_BUCKET
- 创建 R2 存储桶
登录 Cloudflare Dashboard
进入 R2对象储存 → 创建存储桶
设置存储桶名称和区域
保存存储桶的名称以便后续使用
- 创建 D1 数据库
登录 Cloudflare Dashboard
进入 Workers & Pages → D1 SQL 数据库
点击 创建 创建数据库
数据库名称可自定义,例如 images
建议选择数据库位置为 亚太地区 ,可以获得更好的访问速度
创建数据表:
点击数据库名称进入详情页
选择 控制台 标签
执行以下 SQL 语句:
CREATE TABLE media ( url TEXT PRIMARY KEY );
- 创建 Worker
进入 Workers & Pages
点击 创建
选择 创建 Worker
为 Worker 设置一个名称
点击 部署 创建 Worker
点击继续处理项目
- 配置环境变量
在 Worker 的 设置 → 变量和机密 中
点击 添加 添加变量
点击 部署
- 绑定数据库和 R2 储存
在 Worker 设置页面找到 设置 → 绑定
点击 添加
选择 D1数据库
设置变量名为 DATABASE
选择之前创建的数据库
点击 部署
重复上述步骤绑定 R2 储存,变量名为 R2_BUCKET
- 绑定域名
在 Worker 的 设置 → 域和路由
点击 添加 → 自定义域
输入你在 Cloudflare 绑定的域名
点击 添加域
等待域名生效
- 部署代码
进入 Worker 的编辑页面
将 _worker.js 的完整代码复制粘贴到编辑器中
点击 部署
- 配置缓存
进入 Cloudflare Dashboard
进入 网站 → 选择你的自定义域名 → 缓存 → Cache Rules → 创建缓存规则
选择 缓存所有内容模板
设置 边缘 TTL → 忽略缓存控制标头,使用此 TTL → 30天 (根据需要设置)
点击 部署
有需要的自行部署!
源码: GitHub - 0-RTT/JSimages: 基于 Cloudflare R2 储存的图床/视频床服务
image 6000×3376 701 KB
heart
+1
laughing
82
回复
1.1k
浏览量
98
赞
5
链接
39
用户
38
9
6
4
3
阅读时间
7 分钟
热门回复
少年 salt
1 天
大佬。。
1 回复
柒刻 QIKE 海纳百川
1 天
先点个star支持一波
2 回复
Brantfang 种子用户
1 天
这个网站打开好快啊。 2 个回复
1 回复
Aiu Brantfang 1 天
估计缓存了吧 1 个回复
1 回复
柒刻 QIKE 海纳百川 Brantfang 1 天
做了Cloudflare Cache API 缓存
回复
Brantfang 种子用户
Aiu 1 天
是第一打开你的站。CF 优选吗? 1 个回复
回复
Aiu Brantfang 1 天
不是,没有优选。
因为缓存了,在你访问的时候,直接从cf的cdn获取内容,没有回源,速度可能会快一些。
外加现在早上,网络体验好,晚高峰的时候你打开可能就没有这么丝滑了。
回复
大帅哥 handsome 种子用户
1 天
太强了吧!
回复
lixiaoyao
1 天
大佬好 请问我怎么能让这个图床也可以存储pdf,word等格式的文件呢 1 个回复
回复
Aiu lixiaoyao 1 天
271行的修改为 acceptTypes: '/' ,如果上传其他类型的文件,后台管理会不显示的。目前只支持图片和视频展示。 1 个回复
回复
我大魔法师刘秀 one1bug 圆圆满满
1 天
牛啊,佬 1 个回复
1 回复
Aiu 我大魔法师刘秀 1 天
快去试试
回复
lixiaoyao Aiu 1 天
好的 谢谢 1 个回复
回复
Aiu lixiaoyao 23 小时
后续可能会弄成文件床,后台支持显示所有文件。 1 个回复
回复
xxpsj 文化宣导员
23 小时
太强了吧!
回复
AccessDeny asdyinliqiang
23 小时
太强了,支持一下佬
回复
flyrr
23 小时
这个可以配合picGo用吗,佬 1 个回复
回复
Aiu flyrr 23 小时
我没用过这个耶 2 个回复
回复
F-Droid Regular Aiu 23 小时
最近好像CF修改政策,准备噶号了 1 个回复
回复
'>
StripeM-Inner '> ">