编辑
2025-07-21
Linux
0
请注意,本文编写于 140 天前,最后修改于 140 天前,其中某些信息可能已经过时。

目录

一、为什么选择 Cloudflare R2 做图床?
二、准备工作
三、创建与配置 R2 存储桶
步骤1:创建存储桶
步骤2:绑定自定义域名
步骤3:创建S3 客户端API访问密钥
四、配置 PicList 上传图片
五、高级优化配置

Cloudflare R2 作为新兴对象存储服务,以其零出口流量费和10GB免费存储空间的优势,成为个人图床的绝佳选择。

一、为什么选择 Cloudflare R2 做图床?

Cloudflare R2 是 Cloudflare 推出的对象存储服务,与传统云存储相比具有独特优势:

✅ 零出口流量费用:图片被访问时不收取任何流量费

🌍 全球加速网络:利用 Cloudflare 全球275个节点实现快速访问

🆓 免费额度充足:每月免费提供: 10GB 存储空间(约可存5万张2MB图片) 100万次上传操作(A类操作) 1000万次图片读取(B类操作)

💰 超低超额费用:即使超出免费额度,每1000万次读取仅需$0.36

实测网络速度: 白天:最高可达50MB/s

晚上:约4-5MB/s(不同地区有差异)

二、准备工作

在开始搭建前,需要准备好以下资源:

1.Cloudflare 账号:

访问 Cloudflare官网 https://www.cloudflare.com/ 注册免费账号

2.支付方式:

信用卡或 PayPal(仅用于验证,免费额度内不会被扣费)

3.域名一个:

可以是免费域名,或任意已购买的域名(无需备案),将域名托管到CF.

三、创建与配置 R2 存储桶

步骤1:创建存储桶

1.登录 Cloudflare 控制台

2.左侧菜单选择 R2 对象存储,需要添加付款方式

3.点击 创建存储桶

4.填写存储桶名称(例如 image)

5.地区选择 亚太地区(APAC)

6.默认存储类选择 标准

7.点击 创建存储桶

8.开启公开访问:点击 设置,公共开发URL栏 点击 启用,确认对话框中输入"allow",点击允许

9.这样创建完成了!直接在页面的对象TAB上传和删除文件等操作。

打开文件的URL能访问的话,就不需要配置域名,直接使用即可;但为了哪天被墙,建议用自定义域名绑定,看上去也更简洁美观点。

步骤2:绑定自定义域名

1.进入刚创建的存储桶

2.点击 设置 标签页

3.找到 自定义域 二级菜单

4.点击 添加 ,输入自定义域名(例如pic.xxxx.xxx),点击继续

5.点击 连接域

6.等待初始化,状态=活动 即成功

步骤3:创建S3 客户端API访问密钥

1.左侧菜单选择 R2 对象存储,点击概述

2.点击 管理API令牌

3.点击 创建 Account API令牌

4.配置参数:

  • 令牌名称:PicListToken
  • 权限:对象读和写: 允许读取、写入和列出特定存储桶中的对象。
  • 指定存储桶:应用于此帐户中的所有存储桶(包括新创建的存储桶)
  • TTL:永久

5.点击底部按钮 创建 Account API令牌

6.在记事本中保存<访问密钥 ID><机密访问密钥>值,点击完成后无法再次查看

四、配置 PicList 上传图片

PicList是一款高效的云存储和图床平台管理工具,基于PicGo深度二次开发,提供完整的图床功能和全面的云存储管理能力

PicList下载安装与基础配置:

  1. 下载安装 PicList https://piclist.cn/
  2. 打开 PicList,进入 图床设置
  3. 选择 Amazon S3(因 R2 兼容 S3 API)
  4. 填写配置信息:
Piclist 字段名Cloudflare R2 对应值
设定AccessKeyId访问密钥 ID (Access Key ID)
设定SecretAccessKey机密访问密钥 (Secret Access Key)
设定Bucket创建存储桶时填写的名称 img
设定上传路径xxx文件名/{year}/{month}/{fullName}
设定Regionapac
自定义节点复制节点URL:R2 对象存储→概述→API→将 R2 与 API 配合使用→复制URL
自定义域名pic.xxxx.xxx

五、高级优化配置

1.设置缓存规则(减少B类操作)

  1. 在 Cloudflare 控制台选择你的域名
  2. 进入 规则 → 页面规则 → 创建页面规则
  3. 配置:
  • URL:https://pic.xxxxx.xxx/*
  • 边缘缓存TTL:1个月(长期不更新的图片)
  • 浏览器缓存TTL:1天
  • 缓存级别:缓存所有内容

2.设置速率限制(防止恶意请求)

  1. 进入 安全性 → WAF → 速率限制规则
  2. 点击 创建规则
  3. 配置:
  • 规则名称:image-rate-limit
  • 字段:URL路径
  • 运算符:包含
  • 值:/
  • 当速率超过:100 请求 / 10 秒
  • 然后采取措施:阻止

3.防盗链设置(可选)

  1. 进入 安全性 → WAF → 自定义规则
  2. 点击 创建规则
  3. 配置:
  • 规则名称:hotlink-protection
  • 字段:主机名 等于 pic.xxxxx.xxx
  • 添加条件:引用方 不等于 www.xxxxx.xxx
  • 然后采取措施:阻止

本文作者:Tony325

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!