如果网站上有大量图片,直接放在网站上会影响加载速度,通常我们是放在Cloudflare R2 存储桶里面,如果用了Cloudflare的CDN、DNS、防护,那R2就是无缝集成的。图片、视频用R2存,默认就被Cloudflare全球1000多个节点加速,访问速度飞快,而且安全防护也直接拉满,而且它还完全兼容亚马逊S3的API。最重要的是免费额度也很大方,一般的小网站都不用再额外花钱。
那我们就来看看怎么创建存储桶,打开https://dash.cloudflare.com/, 左边点击R2对象存储,点开概述,点击页面右上角的创建存储桶,来到如下的页面:
然后下一步就创建存储桶,如下图所示:
注意这个位置最好要根据目标用户来选择,
欧洲用户占大多数 → 选择 西欧 (WEUR)
美国用户占大多数 → 选择 北美洲东部 (ENAM)
欧美用户大致均衡 → 选择 西欧 (WEUR)(欧洲对延迟更敏感,且合规要求更严)
PS: 这个位置以后不能改,所以刚开始创建的时候就要选好。直接点“创建存储桶”,到这个界面:
创建完存储桶,默认是不允许公共 URL 访问的,所以要进一步的设置。在设置---公共开发URL里面,点右边的启用,如下图所示:
然后直接点allow确认就可以了。
确认之后公共开发URL这里就会出现一个可以公开访问的URL。
接下来是创建API Token, 用于上传图片等,还是在R2对象存储--概述里面--右边API tokens右边点管理 ,
然后点创建Account API令牌,
来到下一个界面:
权限这里选对象读和写,其它的默认就可以,再点击下面的创建API令牌。
然后就得到了下面的界面,有令牌值,访问密钥,机密访问密钥,还有最下面的终结点,这些要妥善保存起来,放在.env里面。
再接下来是创建Cloudflare Worker作为中转,在R2对象存储--概述里面---右上角添加--Workers,然后部署成功
最后是添加自定义域名,在Workers设置里点添加域和路由,选自定义域,然后按提示一步步做就可以了。
最后,我们可以往存储桶里上传一张图片,然后用自定义的域名URL测试一下,如果能正常访问那就说明设置对了,这样网站图片就托管在了一个拥有全球加速、免费且安全的Cloudflare R2存储桶中了。

