AI 摘要想拥有自己的免费图床?这篇文章教你如何利用Cloudflare Pages和GitHub上的CloudFlare-ImgBed项目,搭建一个永久免费、全球加速的图床。它能彻底解决个人博客服务器硬盘不足的困扰,无需额外付费或占用服务器资源。该方案通过Cloudflare Pages托管,利用R2或Telegraph等免费接口存储图片,并借助Cloudflare全球CDN加速。核心优势是零成本、不依赖自有服务器、可视化管理和极速访问。搭建过程简单,但需注意数据安全、合理使用配额及国内访问速度,建议上传前压缩图片。
还在为服务器硬盘发愁?教你用 Cloudflare Pages 搭建永久免费图床!
在前两篇文章中,我们搞定了域名接入和 SSL 安全设置,网站已经跑得飞快了。
但是,作为一个刚刚起步的个人博客,我们很快就会面临一个新的焦虑:服务器硬盘太小了!
一般的 VPS 只有 20G 左右的硬盘,如果我们要在文章里放很多高清大图或者一些文件,没几天硬盘就红了。而且,万一哪天要迁移服务器,搬运这些图片简直是噩梦。
有没有一种方案,既不用花钱买存储对象(OSS/S3),又不需要占用服务器空间,还能有可视化界面直接上传图片呢?
有!今天我们就来介绍 GitHub 上的神级项目:CloudFlare-ImgBed。
感谢大佬 MarSeventh 的开源贡献,让我们得以实现这个想法~
原理揭秘:它是怎么工作的?
简单来说,这个项目利用了 Cloudflare 的 Pages 服务来托管前端页面和后端逻辑。
- 前端:提供一个漂亮的网页,让你能拖拽上传图片。
- 后端:默认利用 CF 的 R2 存储桶、Telegraph 等存储方式(Telegram 旗下的发布平台)的免费接口来存储图片,并通过 Cloudflare 的全球网络进行加速。
省流总结:
- 0 成本:完全免费,构建简单。
- 0 服务器:不用占用你自己服务器的任何资源。
- 可视化:有个像样子的后台管理界面。
- 速度快:CF 全球 CDN 加速。
第一步:Fork 项目到你的 GitHub
首先,你需要有一个 GitHub 账号,Fork 一下这个项目。
- 打开项目地址:MarSeventh/CloudFlare-ImgBed
- 点击右上角的 Fork 按钮。
- 点击 Create fork,把这个项目“叉”到你自己的仓库里。

第二步:在 Cloudflare Pages 部署
- 登录 Cloudflare 后台。
- 在左侧菜单找到 【Workers 和 Pages】。
- 点击蓝色的 【创建 (Create)】 -> 选择 【Pages】 标签 -> 【选择一个存储库】。
- 选择你刚才 Fork 的那个仓库
CloudFlare-ImgBed,点击 开始设置。

关键设置环节:
- 项目名称:随便填,比如
miku-img。 - 生产分支:默认
main即可。 - 构建设置:完全不用动! 保持默认即可。
- 构建命令:填写
npm install(注意:这里必须填!)
直接点击 【保存并部署 (Save and Deploy)】。

等待几十秒,当看到“成功!”的绿色对勾时,你的图床就已经基本完成了!
进阶设置提醒:
虽然部署好了,但我们还需要一些别的设置(比如连接 R2 存储桶)。我们可以查看作者的文档来进行相对应的设置。
第三步:设置后台账号密码(重要)
默认情况下,谁知道了你的网址都能往里传图,这可不行,如果是自己博客使用的话,我们需要设置一个管理员账号。
点击页面上的 设置(或访问你的图床地址),确保我们的站点不会被恶意使用。
注意: 第一次使用时账号和密码均为空,自行登录后修改即可。

第四步:绑定自定义域名
虽然 CF 分配了一个 xxx.pages.dev 的域名,但为了逼格和长久考虑,我们最好用自己的二级域名,方便好看【doge】。
- 在 Pages 项目页面,点击 【自定义域 (Custom domains)】。
- 点击 【设置自定义域】。
- 输入你想用的域名,比如
img.example.com。 - 点击继续,Cloudflare 会自动帮你添加一条 DNS 记录。
特别提醒:
别忘了去 Cloudflare 的 DNS 设置 里面检查你的二级域名,确保添加了 A 记录(主机名填img或你设置的前缀),否则可能无法访问。
等待几分钟,访问 https://img.example.com,你就会看到那个熟悉的上传界面了!登录后,你就可以愉快地拖拽上传图片,并直接获取 MD 或者直链格式的链接。

避坑与注意事项
虽然这个方案很香,但作为一个负责任的博主,我有必要告诉你它的局限性:
数据安全性:
如果你使用的是 Telegraph 的接口,虽然免费,但图片理论上不在你自己的控制手中。如果哪天 Telegraph 倒闭了或者接口变了,图片可能会丢失。- 建议:用来存博客配图完全没问题(记得本地留个底),但千万别存私密照片!
- 适度薅羊毛:
虽然 CF 不限制流量,但限制了文件存储容量和访问次数(R2 也是有免费额度的)。请注意自己的配额,不要滥用作为大文件存储,做一个优雅的互联网公民。 - 引用限制:
有些国内平台(如微信公众号、知乎)可能会拦截 Telegraph 的图片源,但在你自己的独立博客上使用是完全没问题的。 国内访问速度(重要):
由于 Cloudflare 在国内存在“众所周知”的网络连接限制,部分地区直连访问可能会比较慢。- 建议: 强烈建议在上传前使用压缩工具对图片进行压缩,减小体积。一张 5MB 的原图和一张 200KB 的压缩图,在弱网环境下的加载体验是天差地别的!这能有效避免访客因加载太慢而无法正常预览图片。
总结
至此,你已经拥有了一个“无限容量、全球加速、带有管理后台”的免费图床。
以后写文章,只需要把图片往浏览器里一拖,复制 Markdown 链接,粘贴到 Typecho 里,行云流水,一气呵成!
你的服务器硬盘终于可以松一口气了!
下一篇预告:网站有了,图片有了,如何在对接搜索引擎对你的网站进行收录和爬取?