云存储-使用cloudflare R2
强烈推荐使用cloudflare R2
关于cloudflare R2
对于目前支持的存储,强烈建议使用cloudflare的R2存储,该云存储非常牛x
- 10G的免费存储/月
- 图片,视频等文件的访问,只计算访问次数(访问一次+1),不计算访问流量,譬如访问1mb的图片和访问500mb的视频,都是一样的
- 100万的写入操作次数/月,免费
- 1000万的访问次数/月,免费
- 这已经很牛逼了,继续,还有。。
- 可以在site站点里面设置缓存(通过page rules),最高可以设置一个月的缓存,访问缓存,R2存储不计数。这基本上是完全免流量费了
视频介绍
关于cloudflare R2域名
用fecify一般都是建很多的站点,我们建议您的R2域名用一个单独的域名,而不是和您的授权域名或者店铺域名混用,原因是:
- 站点更改内容会经常刷新cf缓存,如果公用一个域名,那么站点cf刷新,那么图片缓存也被刷新了。(图片刷新后,那么在访问,cf缓存有一个重新加载图片的过程,那么速度会慢一些)
- 图片只有新增删除,是没有更新的,因此图片不存在刷新cf缓存的问题。
- R2的图片,我们可以做cf缓存,Page Rules的缓存规则最大可以一个月,因此,我们可以将图片缓存设置为一个月,这样一个图片在一个月内无论访问多少次,走的都是cf缓存,而不是直接读取
- 这样可以极大的减少R2图片的访问次数(第一次是读取R2,后面的请求就是走cf缓存了,R2因此就不计数了,这样每个月免费额度:1000万的访问次数/月,基本够用了,可以极大的降低费用,尽量不花钱)
- 如果您站点少,访问少,那么图片域名和店铺独立站域名使用一个也没有问题(因此,我们的建议也并不是绝对,您根据自己的情况灵活运用)
fecify的服务端后台可以配置R2 (菜单:系统管理 --> 系统设置 --> 存储设置),您可以在这里进行cf R2的配置,然后强制服务端复用商家端的配置,
这样每个店铺就不需要单独进行R2的配置。(如果您不嫌麻烦,商家端后台单独配置存储也是没有问题的)
上面是需要进行配置的值,这些配置值,我们将通过下面的步骤,一步一步的说明如何获取这些配置值。
创建cloudflare R2,我们需要使用自己的域名,而不是cf的域名,这样我们需要先使用图片域名,这需要使用该域名在cloudflare创建一个site站点
- 如果您的域名在cloudflare已经创建site站点了(譬如:服务端后台配置cloudflare后,在店铺商家端后台,更改域名,系统将自动在cloudflare创建site站点,您如果使用这个域名作为R2的域名,那么就不需要手动添加了)
- 如果您使用一个单独的域名作为cloudflare R2的访问域名,那么需要到cloudflare手动添加site站点。
- 注意:目前只有R2的site站点是手动创建,对于授权域名,商家端店铺域名,都是在fecify后台通过api自动创建。
1.如果R2访问域名(用来访问图片的域名),在cf中没有添加,那么,您需要cloudflare手动添加site站点,参看:cloudflare手动添加site站点
2.如果R2访问域名已经在cf中存在,那么执行下面的逻辑即可。
使用cloudflare R2
1.访问:https://dash.cloudflare.com/, 登录您的账户,进入cf管理后台,然后菜单点击R2
- 使用R2需要您填写您的visa信用卡,才能使用,如果您的cf账号没有绑定信用卡,那么界面将不是下面的界面,而是在右侧出现一个信用卡绑定界面,您需要先手动绑卡
- 绑卡后,会出现下面的界面
点击按钮将R2订阅添加到我的账户
2.点击创建存储桶
3.在这里创建您的存储桶,如下图
我这里填写的存储桶名称是:fecify
4.新建存储桶完成后,就会进入这个存储桶
点击设置,然后点击连接域按钮
5.填写您的自定义域名
后面访问图片,就用这个自定义域名。譬如:r2.fecify.shop
这个域名,就是前面我们一开始创建的cf site站点填写的域名。 (这个域名必须先在cf的管理后台add site,也就是使用这个域名在cf后台创建一个site) 否则填写后会报错,如下图
- 譬如:前面添加了cf site站点的域名是
fecify.shop,这里我填写r2.fecify.shop - 如果填写一个没有添加到cf site的域名,那么会报错,如下图:
填写site站点的域名,譬如我设置的域名是:r2.fecify.shop (后面的配置截图,都以这个自定义域名进行截图说明)
设置完成后,点击按钮连接域
提交后,等几分钟生效,如下图已生效(需要等待一下)
cloudflare目前可以更改tls版本,为了安全和兼容,您需要更改tls为1.2版本
为什么不推荐使用 TLS 1.0 和 1.1?TLS 1.0 / 1.1 已被正式弃用,原因如下:
- 存在已知安全漏洞:容易受到攻击(如 BEAST、POODLE、RC4 等加密算法漏洞),无法满足现代安全合规要求(PCI-DSS、NIST、ISO 等标准均禁止使用)。
- 加密算法老旧:使用了弱加密套件(如 SHA-1、RC4、CBC 模式等)。
为什么推荐使用 TLS 1.2 或更高版本?
- 更高的安全性:TLS 1.2 引入了更强的加密算法(如 AES-GCM、SHA-256)。支持 Perfect Forward Secrecy(前向保密),即使密钥泄露也无法解密历史通信。
- 兼容性好:几乎所有现代浏览器、操作系统、API 客户端都兼容 TLS 1.2。旧设备(如早期 Android 4.x 以下)不支持 TLS 1.2,但这些系统已极少使用。
- 性能较佳:TLS 1.2 已较 TLS 1.0/1.1 优化握手过程。
7.完成后,您进入域名对应的site站点,进入dns部分,会发现这里多了一条DNS,这就是R2的自定义域名
8.我们重新进入R2,创建R2 API 令牌
点击创建API令牌
进入创建令牌表单
9.填写完成后,点击创建API令牌提交即可
9.1得到:AccessKey和SecretKey,分别对应Fecify后台配置的AccessKey和SecretKey
9.2对于:https://77fd9076a9b2f12953640f54c3dea825.r2.cloudflarestorage.com
Bucket Name: 上面url中的77fd9076a9b2f12953640f54c3dea825对应于Fecify后台配置的Bucket NameEndpoint:去掉上面这块字符串,就得到:https://r2.cloudflarestorage.com,然后加上cloudflare存储桶的名称fecify(如下图:),然后通过组合,就得到了https://r2.cloudflarestorage.com/fecify, 对应于Fecify后台配置的Endpoint
上面的值,请勿直接复制粘贴,您先读懂原理,然后得到您自己的配置信息
9.3fecify管理后台配置如下图:
您根据上面9.1和9.2获取的值,在fecify管理后台填写即可
9.4上面得到配置值有点繁琐,您可以对照我配置的值,核对好后,填写到fecify的管理后台
对于:
使用自定义域名: 勾选是自定义域名: 输入框写入您的自定义域名,
譬如我设置的自定义域名是r2.fecify.shop, 那么我填写:https://r2.fecify.shop,您按照这个格式配置即可
通过上面,我们就把自定义域名,以及fecify管理后台的配置弄好了,下面,我们还需要加一下CF缓存,缓存后,访问cf r2的图片文件,将不再进行收费计数, 这样您使用R2就不需要购买操作次数了,免费额度基本就够用了
10.配置图片域名对应的站点site缓存
10.1进入site站点(进入图片域名对应的站点,也就是一开始的步骤,我们创建的cf站点)
10.2创建页面规则(page rules)
注意:免费cf版本,最多3条page rules。但也够用。
10.3填写page rules表单,创建page rules
保存后,到这里,我们就全部完成了。然后去fecify后台,商品编辑部分,上传图片测试是否可用
cloudflare R2提速+更稳的线路
1.对于cloudflare R2,有一个免费额度,超出后才进行计费,费用还是比较便宜,而且免费额度很大,如果图片不是很多,10G基本够用
2.使用page rules设置缓存后,那么走的都是cf缓存获取文件,理论上来说,一张图片在一个月内无论访问多少次,R2的操作计数都是1(因为有cf缓存,缓存时间设置了1个月)
3.pro版本毕竟比较贵,如果您的站点少,那么R2的自定义域名对应site站点和fecify独立站的对应的site站点,使用同一个即可(也就是R2自定义域名和fecify独立站域名,使用 同一个域名),这样购买一个pro就够了。
4.如果您有对cloudflare R2更好的操作,欢迎讨论分享。R2这近乎免费的存储实在是太牛x。























