Cloudflare R2 - 免费图床
前言
之前看了一篇文章,关于介绍 Cloudflare R2 来搭建图床的方案,主要是白嫖 Cloudflare
的空间和 cdn 服务。我现在博客 DevNow 的 CDN 使用的是七牛云,偶尔还是有一点点的支出。
虽然不多,但是吧,看到有白嫖的方案,还是蠢蠢欲动,这不今天就来试着弄下看看。
1. 注册Cloudflare账号
先简单介绍下 Cloudflare
是一家提供网络安全和性能优化服务的公司。它的主要功能包括内容分发网络(CDN)、分布式拒绝服务攻击(DDoS)防护、互联网安全和优化,以及域名系统(DNS)服务。
Cloudflare R2
是 Cloudflare
提供的对象存储服务。它类似于亚马逊的 S3(Simple Storage Service)
,但有一个显著的区别:Cloudflare R2
不收取出站带宽费用。这意味着用户在从存储中检索数据时不会被额外收费,这对于需要大量传输数据的应用来说是一个很大的优势。
R2 允许用户存储和管理大量的非结构化数据,比如图片、视频、备份文件等。它与 Cloudflare
的全球网络集成,提供了快速、安全的内容交付,适合需要高效、可靠的存储和分发解决方案的企业。R2
还支持与现有的 S3 API
兼容,方便那些已经在使用 S3
的用户迁移或扩展到 Cloudflare R2
。
2. 绑定域和解析DNS
在左侧网站面板中添加一个域名,由于我的 blog
域名已经在腾讯云上买完了,这里主要将 DNS
解析服务迁移到 Cloudflare
。
如果不是 DNS
解析不是 Cloudflare
的话,状态这里会显示让你去切换。我这里用腾讯云来举例子,具体步骤如下:
2.1 在腾讯云里域名的菜单下点击对应域名管理
2.2 然后点击修改 DNS 解析
2.3 这里我们把默认的 DNSPod 切换到 自定义DNS,然后填写对应的地址就好
下边这两个地址可以在 Cloudflare
中找到,填上就好,然后等待,快的话几分钟就好,好了之后 Cloudflare
会发送邮件通知,如下,这个时候表示已经成功解析过来了。
2.4 这个时候再回到网站这里发现状态已经成功变成活动了
3. 开通R2服务
通过左侧菜单导航进入到 R2 的服务,开通前需要绑定信用卡,支持 Visa
的都可以,方便后边对于超出免费额度或者开启一些收费服务。开通后即可创建存储桶:
创建后可以进入到桶的详情面板:
配置一个自定义域名,后边可以通过这个访问。
到这里基于 R2 的对象存储服务就基本完事了。后续就可以在存储桶中存储对象了。
4. PicGo 配置R2上传服务
为了缩减上传图片的工作流,我使用的是基于 PicGo 的上传方式,可以通过复制和 url 进行上传。这里主要记录下如何配置上传到 R2 服务的过程。
R2 是兼容S3的格式的,所以这里直接配置S3,插件里搜索 s3 的插件,安装即可:
在「插件设置」中选择安装,「图床设置」中就新增了 Amazon S3
选项。点击进入配置选项。
这里有几项配置需要尤其注意。
- 应用密钥 ID,填写
R2 API
中的Access Key ID
(访问密钥 ID) - 应用密钥,填写
R2 API
中的Secret Access Key
(机密访问密钥) - 桶名,填写
R2
中创建的Bucket
名称,如我上文的yu-r2-test
- 文件路径,上传到
R2
中的文件路径,我选择使用{fileName}.{extName}
来保留原文件的文件名和扩展名。 - 自定义节点,填写
R2 API
中的「为 S3 客户端使用管辖权地特定的终结点」,即xxx.r2.cloudflarestorage.com
格式的S3 Endpoint
- 自定义域名,填写上文生成的
xxx.r2.dev
格式的域名或自定义域名,如我配置的https://r2.laughingzhu.cn
上边的秘钥信息在 Cloudflare R2
的服务中可以找到:
创建一个新的 API
令牌,完成创建后,即可看到相关秘钥,安装上边的对应关系填入即可:
其他配置保持默认即可,确认参数无误后点击「确定」与「设置为默认图床」即可。
5. PicGo 增加自动压缩和转 webp 插件
我用的是 compress-next
有很多模式可以配置,我这里选的是 webp-converter
我主要是希望通过转换 webp
来优化图片加载。安转完记得进行默认配置:
然后启用即可,上传图片即可转换为 webp
格式 上传到 R2
服务
到这里我 blog 整体的静态资源已经从七牛云迁移到 Cloudflare R2
服务了,开始白嫖的日子了,舒服。
原文链接:Cloudflare R2 - 免费图
Cloudflare R2 - 免费图床的更多相关文章
- GitHub + jsDelivr + PicGo + Imagine 打造稳定快速、高效免费图床
GitHub + jsDelivr + PicGo + Imagine 打造稳定快速.高效免费图床 前言 为什么要使用图床呢? 因为在不同平台发布同一篇文章的时候,最一个痛苦的点就是,图片存储问题,各 ...
- GitHub+PicGo构建免费图床及其高效使用
搭建免费图床全过程! 一.搭建缘由 一开始搭建博客,避免不了要用许多图片,最初使用七牛云来做博客图床,但是后来发现,七牛云只有30天的临时域名,hhhhhhh,果然啊,天下就没有免费的好事啊~后来就发 ...
- GitHub+jsDelivr+PicGo 打造稳定快速、高效免费图床
标题: GitHub+jsDelivr+PicGo 打造稳定快速.高效免费图床 作者: 梦幻之心星 347369787@QQ.com 标签: [GitHub, 图床] 目录: 图床 日期: 2019- ...
- 利用服务器+jsDelivr+GitHub搭建咱的免费图床
前言 有人就问了你这个标题写错了?不应该是PicGo+jsDelivr+GitHub搭建咱的免费图床吗? 2333,是一个上传程序啊,不系写错了. 程序介绍 目前程序已实现两种模式上传到GitHub或 ...
- Chevereto免费图床搭建教程 | vps搭建免费图床教程
Chevereto免费图床搭建教程 | vps搭建免费图床教程 本文首发于:https://chens.life/How-to-build-a-free-image-bed.html 前言 自从有了个 ...
- 教你如何使用github+jsDelivr搭建免费图床
前言 之前写了一篇文章,教你如何使用Typora+PicGo实现图片自动上传到图床 . 这里我用的是七牛图床,七牛图床有一定的免费使用量(没记错的话应该是10个G),如果你的存储量超过这个大小就需要付 ...
- [超详细] [效能工具]Typora+PicGo+Github免费图床快速搭建,提升技术文档输出效率
一.前言 在我们日常的学习和工作中,我们经常需要进行写作.尤其对于我们程序技术人员而言,工作中的技术方案文档或者接口文档等,都是经常需要用上的. 那么如果没有一个高效的工具,去帮助我们记录和创作,这将 ...
- 使用jsdelivr + GitHub + PicGo搭建免费图床
前言 之前一直有开通有道云笔记会员,主要是为了会员markdown图片可以在线保存的功能,前一阵子会员到期,考虑这个功能可不可以自己单独实现,从而替代使用有道云会员. 通过网上搜索的方式,查询到了几种 ...
- 10分钟教你使用Picgo+GitHub+ jsDelivr搭建CDN加速免费图床
前言 经常写Markdown或者博客的同学,肯定都要用到图床.图床是什么呢?其实相当于一个存储图片的网站,类似百度云这样,不过上传图片到图床后可以直接通过外链进行访问. 比如把本地一张a.jpg上传到 ...
- Typora + PicGo + B2 Cloud Storage 实现个人免费图床
前言 22年底终于购入了Typora,想着之前使用时候的痛点就是在图片管理这一块. 我尝试过使用在线的图床工具进行图片上传再将链接放入Typora,但说实话非常麻烦. 也尝试过就将图片保存在本地,但当 ...
随机推荐
- 关于ZYNQ-7000中断调试一点感想
背景 在ZYNQ 平台下,需要对各种需要的底层接口进行初始化. 我依次调试了很多驱动,从最简单的网口到USB:再到读写PL端的寄存器(通过AXI总线,内存映射读写物理地址实现),到中断的时候一直卡着不 ...
- Java 把多个音频拼接成一个
在Java中,将多个音频文件拼接成一个通常需要使用一些专门的音频处理库,因为Java标准库并不直接支持音频文件的合并.一个常用的库是JAVE2(Java Audio Video Encoder)或JL ...
- 解密Prompt系列33. LLM之图表理解任务-多模态篇
上一章我们介绍了纯文本模态的表格理解任务,这一章我们聚焦多模态图表数据.先讨论下单纯使用prompt的情况下,图片和文字模态哪种表格模型理解的效果更好更好,再说下和表格相关的图表理解任务的微调方案. ...
- yb课堂 视频详情页模块开发《三十八》
CourseDetail基础模块开发 CourseDetail模块开发,拆分组件 CourseDetail.vue Header.vue Course.vue Tab.vue Summary.vue ...
- c++临时对象导致的生命周期问题
对象的生命周期是c++中非常重要的概念,它直接决定了你的程序是否正确以及是否存在安全问题. 今天要说的临时变量导致的生命周期问题是非常常见的,很多时候没有一定经验甚至没法识别出来.光是我自己写.rev ...
- 将mysql的查询结果保存到文件中,并将文件从内网下载到外网服务器
方法一: 直接执行命令: mysql> SELECT ordersid from yws.callback_clockd ORDER BY ordersid ASC limit 0,10000 ...
- [PHP]用socket写一个简单的WEB服务器
今天我就要把我的最新研究成果展示看看,而不玩ARMBIAN了,因为刷了两台S905L3的发现一点挑战都没有 从0.2写WEB服务难啊,你需要懂HTTP协议和SOCKET!不过有经验我们很快就可以搭建一 ...
- ASP.NET Core WebAPI 使用CreatedAtRoute通知消费者
一.目的 我想告诉消费者我的api关于新创建的对象的位置 二.方法说明 public virtual Microsoft.AspNetCore.Mvc.CreatedAtRouteResult Cre ...
- 格式输出函数printf()详解_C语言
printf函数称为格式输出函数,其关键字最末一个字母f即为"格式"(format)之意.其功能是按用户指定的格式,把指定的数据显示到显示器屏幕上. printf函数调用的一般形式 ...
- AppiumDesktop控制手机和安卓模拟器
前言: 本期内容 如何用AppiumDesktop连接安卓手机和安卓模拟器 AppiumDesktop基本参数的获取方法,及如何驱动安卓设备 AppiumDesktop在模拟登陆和爬虫中用到的基本功能 ...