cloudflare对象存储R2配置教程。
教程适用于R2以及支持套CF实现免流的对象存储服务(如b2 scaleway等 具体见带宽联盟),总结了一下如何配置R2
CF带宽联盟:https://www.cloudflare.com/zh-cn/bandwidth-alliance
我想用不支持带宽联盟的怎么办?你可以选择卖房支付高额流量费用!
教程开始之前简单介绍一下我理解的对象存储和云盘(可能很片面 欢迎指正):
网盘和对象存储都是存储文件的 各有优缺点 适合的场景也不同
网盘/云盘 如阿里云盘 坚果云 GD OD等,优点:用户在软件的可视化界面可以进行上传下载同步等操作 缺点:可能会有广告(没有别的意思为爱发电不不可取),文件分享给他人往往需要对方也下载相应软件,下载文件可能会限速
对象存储 R2 b2 scaleway等 优点:文件以直链形式传播 无需下载第三方软件 基于AWS_S3规范 简洁易于传播,比较适合个人网站的图床或视频床,支持高并发和高带宽( 缺点:无可视化界面 需要用户自己开发
视频直链演示:
可以测试R2文件下载速度或者播放是否可以随意滑动进度条
Your browser doesn’t support HTML5 video. Here is a link to the video instead.
各地区文件测速:
###建议用同区域的vps测速
欧洲东部:
wget https://eueast.r2.1323123.xyz/3GB-debian11.qcow2
欧洲西部:
wget https://euwest.r2.1323123.xyz/3GB-debian11.qcow2
美国东部:
wget https://useast.r2.1323123.xyz/3GB-debian11.qcow2
美国西部:
wget https://uswest.r2.1323123.xyz/3GB-debian11.qcow2
亚洲:
wget https://asia.r2.1323123.xyz/3GB-debian11.qcow2
PS:最近用R2明显感觉到晚高峰速度慢等问题,而且非晚高峰用欧洲和美国vps下载速度也才10-25MB/s
今天又开了其他地区的存储桶试了下 发现可能是存储桶地区问题
我的cloudflare注册的是国区账号,他可能默认存在亚洲了,亚洲网络费用大家也都知道,测试速度是其他地区的三分之一
我用wget单线程测试的 欧洲速度在65MB/s左右 美国速度在50MB/s,亚洲存储桶只有10-25MB/s。(可能还有其他我不知道的因素 如vps位置 欧洲美洲非晚高峰 等等)
这里贴一些测试文件供大家测试,如果测试慢的 可以评论区反馈(国内测试就不用了)
建议用R2的朋友都指定下存储桶
正文:
1 开通R2(0元虚拟卡即可),创建存储桶,我这边取名 “tanglu
“
2 添加域名 以下操作基于域名(域名无法自选IP),我以 r2.smalljp.com 为例
3文件上传 网页端支持300MB以下的文件上传,大于300MB强烈使用rclone上传
rclone简单教程:
rclone1.59版本以上才支持R2
Linux官方脚本:curl https://rclone.org/install.sh | sudo bash
新建rclone配置 我这里取名myr2
,选择5(AWS S3那个 然后就有R2了)网上很多教程 不继续了
rclone tree myr2:
#有输出桶的文件名表示配置成功
rclone copy -P /root/download myr2:/tanglu
#linux命令 将该文件夹下的所有文件上传 -P参数是显示速度状态
rclone copy -P D:\qbittorrent\Download\HongKongDoll_她的秘密1 myr2:/tanglu
#windows上传命令可能需要代理加速
###以上只是基本的部分上传命令 rclone支持上传/下载/挂载等命令,详情可参考:https://www.3520.net/server-knowledge/2700.html
4必须配置
配置只针对r2.smalljp.com,不影响smalljp的其他子域名
a)强制https:规则>页面规则
R2不支持http 未配置强制跳转https时访问未加https可能会打不开
b)缓存所有内容:规则>页面规则
缓存可以存储到CF边缘节点 加快打开速度 大大减少B类操作
不过超过512MB的R2文件 CF 不会缓存(详见 https://developers.cloudflare.com/cache/about/default-cache-behavior)
c)不缓存大于500MB的视频 这个自己配置吧,需要知道的是大于512MB的视频需要增加一条不缓存规则 否则会出现进度条无法拖动或者视频无法播放(感谢@Oracle. 大佬的指导),但是不影响 视频或大于512MB文件的下载,下载速度还是不限速
d)关闭自动程序攻击模式:安全性>自动程序>关闭
不关闭可能会被误判导致无法wget下载(详见 v2ex.com/t/893933 #10楼)
5建议配置
这样设置后就可以在”安全性>概述”看到所有访问者IP
另外推荐一下 可以将r2.smalljp.com换为”contain(包含)”主域名smalljp.com 查看所有访问者IP 并且看到哪些IP被阻挡 为什么被阻挡
f)屏蔽境外访问:安全性>WAF
这个和配置(b)一样 都是防刷B操作。如需开启规则(f) 请将(f)放在(e)前 因为匹配规则为优先匹配,我的配置
g)请求速度限制:安全性>WAF>速率限制规则 这个自己配置吧 也是为了防刷。
删除中途停止导致未完成上传的文件
S3协议未上传完成的文件会消耗存储桶空间(比如上传时ssh突然断开导致上传中止),但是不会在存储桶文件目录显示,这时需要删去
参考:https://rclone.org/oracleobjectstorage/#cleanup
#列出未完成的上传
rclone backend list-multipart-uploads myr2:tanglu
#清除该文件夹一分钟之前还未完成的上传
#-o 是指定时间 1h 2d 3w 4m 等等
rclone backend cleanup -o max-age=1m myr2:tanglu/test
6附加
R2免费套餐:每月10G A类操作前一百万次免费 B类操作前一千万次免费(详见 https://developers.cloudflare.com/r2/platform/pricing)
支持对象存储的程序:alist rclone nextcloud ,还有什么我也不知道 欢迎大佬补充
R2只支持https访问,使用CDN反代文件记得设置https回源
转自tanglu:https://blog.tanglu.me/cloudflare-R2-configure/
![](/wp-content/uploads/2022/10/alipaypayment-283x300.jpg)
![](/wp-content/uploads/2022/10/wechatpayment-201x300.jpg)
共有 0 条评论