搭建免费、无限空间的图床:Cloudflare Pages 和 Telegraph-Image
注:截至 2025 年 1 月,原有的 Telegraph API 接口被官方关闭,需要将上传渠道切换至 Telegram Channel,部署时需要设置 TG_Bot_Token 和 TG_Chat_ID,否则影响上传功能。

1. 在 GitHub 上 Fork 此项目
转到项目仓库(https://github.com/cf-pages/Telegraph-Image),点击页面右上角的 Fork,创建新分支到你的仓库

创建分支完成后,就不用管了,继续下面的步骤。
2. 创建一个 Telegram Bot
项目的原理可理解为:利用 Telegram Bot 的 API 实现图片上传和查看。
2.1 用 BotFather 创建机器人
登录 Telegram,向 @BotFather 发送命令 /newbot 。
根据提示,依次输入您的 机器人名称 和 用户名 。
成功创建机器人后,您将会收到一个 BOT_TOKEN,用于与 Telegram API 进行交互。

2.2 新建频道,并将机器人设置为管理员
创建一个新的频道(Channel)。
进入该频道后,选择频道设置,将刚刚创建的机器人添加为频道管理员。


2.3 获取频道 ID
频道 ID 无法直接被查看,为此,我们需要利用一个第三方机器人来获取频道 ID。
向机器人 @VersaToolsBot 发送消息,并按提示操作。
你将得到一个 CHAT_ID ,此即频道的ID。
3. 在 Cloudflare 部署 Pages 项目
3.1 创建 Pages 项目
登录到 Cloudflare 控制台,在左侧边栏中选择 Workers 和 Pages 。

接下来选择 连接到 Git ,并在接下来的步骤中选中你刚刚 Fork 的那个仓库。

构建设置部分,我们点击展开 环境变量(高级) 选项。

新建以下两条变量(将示例值改为你刚刚在 第 2 步 获取的数据):
| 环境变量 | 示例值 | 说明 |
|---|---|---|
| TG_Bot_Token | 123468:AAxxxGKrn5 | 从 @BotFather 获取的 Telegram Bot Token |
| TG_Chat_ID | -1234567 | 频道的 ID,确保 TG Bot 是该频道或群组的管理员 |
3.2 绑定自己的域名
回到项目列表,点击进入这个项目,然后点击 自定义域 选项。

根据提示绑定自己的域名,并配置 CNAME 解析,稍后 Cloudflare 还会自动为你配置 SSL 证书。
这一步骤大约需要 2 分钟生效,耐心等待片刻。
完成
至此,一个无限空间的图床部署完成,尽情使用吧~

进阶使用
Telegraph-Image 其实也支持了图片后台管理、以及通过第三方 API 实现的图片 AI 审核功能,需要手动开启。
有关操作步骤,请参阅官方教程:https://github.com/cf-pages/Telegraph-Image
局限性
- 图片文件实际上存储于 Telegram 的服务器,其对图片大小的限制为最大
5MB - 毕竟使用了 Cloudflare 的网络,图片的加载速度在某些国家和地区可能较慢
- Cloudflare Function 免费版每日限制
100,000个请求(即上传、加载图片的总次数不能超过100,000次)
