树洞剪藏#剪藏#树洞剪藏

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

2024 年 12 月 18 日1 分钟
分享Twitter / XTelegram微博
基于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)

部署教程:

  1. 环境变量说明

需要在 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

  1. 创建 R2 存储桶

登录 Cloudflare Dashboard

进入 R2对象储存 → 创建存储桶

设置存储桶名称和区域

保存存储桶的名称以便后续使用

  1. 创建 D1 数据库

登录 Cloudflare Dashboard

进入 Workers & Pages → D1 SQL 数据库

点击 创建 创建数据库

数据库名称可自定义,例如 images

建议选择数据库位置为 亚太地区 ,可以获得更好的访问速度

创建数据表:

点击数据库名称进入详情页

选择 控制台 标签

执行以下 SQL 语句:

CREATE TABLE media ( url TEXT PRIMARY KEY );

  1. 创建 Worker

进入 Workers & Pages

点击 创建

选择 创建 Worker

为 Worker 设置一个名称

点击 部署 创建 Worker

点击继续处理项目

  1. 配置环境变量

在 Worker 的 设置 → 变量和机密 中

点击 添加 添加变量

点击 部署

  1. 绑定数据库和 R2 储存

在 Worker 设置页面找到 设置 → 绑定

点击 添加

选择 D1数据库

设置变量名为 DATABASE

选择之前创建的数据库

点击 部署

重复上述步骤绑定 R2 储存,变量名为 R2_BUCKET

  1. 绑定域名

在 Worker 的 设置 → 域和路由

点击 添加 → 自定义域

输入你在 Cloudflare 绑定的域名

点击 添加域

等待域名生效

  1. 部署代码

进入 Worker 的编辑页面

将 _worker.js 的完整代码复制粘贴到编辑器中

点击 部署

  1. 配置缓存

进入 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 '> ">

相关文章