默认情况下,R2 存储桶是私有的。要通过 Cloudflare 的缓存提供 R2 对象,您需要附加您控制的域名——称为 Custom Domain——到存储桶。这会创建由 Cloudflare 网络支持的公共 URL,使存储文件的请求通过 Cloudflare 的缓存,而不是每次都直接访问 R2。
按照以下步骤为您的存储桶设置 Custom Domain:
- 前往 R2 并选择您的存储桶。
- 在存储桶页面上,选择 Settings(设置)。
- 在 Public access(公共访问) > Custom Domains(自定义域名) 下,选择 Connect Domain(连接域名)。
- 输入要连接的域名并选择 Continue(继续)。
- 查看将添加的新 DNS 记录并选择 Connect Domain(连接域名)。
Cloudflare 自动添加将您的域名映射到存储桶的 CNAME 记录,生成格式为 [name].domain.com 的公共可用 URL。
默认情况下,Cloudflare 根据缓存规则在边缘数据中心(最靠近访问者的数据中心)缓存 R2 内容。每个出现缓存未命中的边缘数据中心直接从 R2 获取内容。
Tiered Cache 通过将数据中心组织成层次结构来改变这一点。当附近的数据中心出现缓存未命中时,它首先检查指定的上层数据中心,然后再前往 R2。这减少了到达 R2 的请求数量。
要为 R2 启用 Tiered Cache,配置 Smart Tiered Cache,它会自动选择与您的 R2 存储桶延迟最低的上层数据中心。
- 访问控制:连接 Custom Domain 后,您的 R2 存储桶变为公开可访问。应用访问控制以限制谁可以请求您的文件。有关更多信息,请参阅使用 WAF 和 Snippets 控制缓存访问。
- 可缓存大小限制:超过可缓存大小限制的文件不会被缓存。Free、Pro 和 Business 计划每个文件限制为 512 MB。Enterprise 计划默认为每个文件 5 GB。
- 默认缓存的文件类型:Cloudflare 默认不缓存所有文件类型。例如,HTML 和 JSON 不会被缓存,除非您创建具有适当设置的 Cache Rule。