使用Cloudflare搭建图床服务且支持免费的CDN服务

前言

搭建一个图床服务正常情况下需要稳定的服务器、合适的操作系统、充足的存储系统和数据库,但是本次教程仅需用到一个域名即可!

https://yffsoss.iwmyx.cn

https://yffsoss.iwmyx.cn/file/cf6df00f7bfed838c2d03-ede84a2bbbd1ce71cf.png

利用开源项目

Telegraph-Image 该开源项目是一个利用 Cloudflare Pages 和 Telegraph 实现的免费图片托管解决方案,可替代 Flickr/imgur,方便用户分享图片,具有无限存储、免服务器、支持图片审查和后台管理等功能。

详细的搭建教程

一些限制

Cloudflare Function 免费版每日限制 100,000 个请求(即上传或是加载图片的总次数不能超过 100,000 次)。

Fork 仓库

我们需要去 Fork 下方的开源项目到自己的仓库中:



https://github.com/cf-pages/Telegraph-Image

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

直接 Create fork 即可。

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

部署到 Cloudflare

登录自己的 Cloudflare 平台,访问 Workers 和 Pages 界面,并创建:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

在新界面中,点击 Pages 选项页面,并选择连接到 Git:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

连接到自己的 Github 账户:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

进行授权:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

授权成功后会跳转新的界面,在这个界面中选择自己 Fork 的项目,然后点击开始设置按钮:使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

在新界面的右下方,有一个保存并部署直接点击即可:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

在这里等待站点部署完成:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

看到下方的界面,则表示当前进行的操作非常的顺利:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

点击右下角的继续处理项目来到控制台界面,在控制台界面添加我们自定义的域名来进行访问图床服务,Cloudflare 分配的访问地址并一定能够正常使用:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

在新界面输入自己的自定义的域名并点击继续:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

如果你的域名没有在 cloudflare 进行托管,那么会出现下面这种情况:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

我们可以不进行域名的转移,直接点击开始 CNAME 设置在自己的域名管理平台根据提示添加一个 CNAME 记录即可:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

当解析配置完成并且处于有效时,则服务已经正常的运行起来了:使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

开启后台管理界面

开启管理后台之前,我们需要在 Pages 部署的项目管理界面中的:设置 ->函数 -> KV 命名空间绑定中添加一个绑定:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

然后去环境变量中,添加两个变量 BASIC_USER 和 BASIC_PASS 分别代表后台的用户名密码:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

然后重新部署这个项目:

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

部署完成后,访问:



https://自己的域名/admin

使用 Cloudflare 搭建图床服务且支持免费的 CDN 服务

部署完成后就不建议再去操作更新部署了,数据容易没了。

使用接口上传图片

该图床可以利用 api 来上传图片并且获取图片地址:



curl --location \
--request POST 'https://自己的域名/upload' \
--form 'file=@"/1.png"'

响应的内容是:



[{"src":"\/file\/6bd1486e01903a7001305.png"}]


完整的拼接起来就是图片的直链:



https://自己的域名/file/6bd1486e01903a7001305.png



© 版权声明

☆ END ☆
喜欢就点个赞吧
点赞0 分享
图片正在生成中,请稍后...