cloudflare r2进行cdn加速

cloudflare r2进行cdn加速

当我们声明了自定义域名时,实际上,当我们访问资源时,也是会通过cf的代理转发,所以也是经过dns解析的,而cf的dns解析过程中加入了cdn处理,因此不需要额外的配置

CF DNS 常见记录类型

R2 记录类型

R2 是 Cloudflare 特有的 DNS 记录类型,专门用于连接 R2 对象存储服务。

特点:

bash 复制代码
Type: R2
Name: data.tianran.org  # 你的域名
Content: public         # R2存储桶名称
Proxy status: Proxied   # 启用CDN代理

作用:

  • 直接将域名指向 R2 存储桶
  • 自动启用 CDN 加速
  • 无需手动配置复杂的存储桶 URL

CNAME 记录类型

CNAME(Canonical Name)是标准的 DNS 记录类型,用于创建域名别名。

特点:

bash 复制代码
Type: CNAME
Name: cdn                    # 子域名
Content: 37789669-2af8-4...  # 目标域名或服务地址
Proxy status: Proxied        # 启用CDN代理

作用:

  • 将一个域名指向另一个域名
  • 常用于 CDN、负载均衡等服务
  • 更灵活的域名映射

实际应用对比

使用 R2 记录:

javascript 复制代码
// 直接访问 R2 存储的文件
const imageUrl = 'https://data.tianran.org/images/photo.jpg';

使用 CNAME 记录:

javascript 复制代码
// 通过 CNAME 别名访问
const cdnUrl = 'https://cdn.tianran.org/assets/style.css';

在你的配置中:

从截图可以看到:

  1. R2 记录data.tianran.org 直接连接到名为 public 的 R2 存储桶
  2. CNAME 记录cdnblog 等都是域名别名,指向不同的服务

代码使用示例:

html 复制代码
<!-- 使用 R2 记录访问存储文件 -->
<img src="https://data.tianran.org/uploads/avatar.png" alt="Avatar">

<!-- 使用 CNAME 记录访问 CDN 资源 -->
<link rel="stylesheet" href="https://cdn.tianran.org/css/main.css">

性能对比:

javascript 复制代码
// R2 记录 - 直接访问存储
fetch('https://data.tianran.org/api/data.json')
  .then(response => response.json())
  .then(data => console.log('R2数据:', data));

// CNAME 记录 - 通过别名访问
fetch('https://cdn.tianran.org/resources/config.json')
  .then(response => response.json())
  .then(data => console.log('CDN数据:', data));

总结

  • R2 记录是 Cloudflare 为 R2 存储服务专门设计的,使用更简单
  • CNAME 记录是通用的 DNS 别名机制,使用更灵活
  • 两者都可以启用 Proxied 状态来享受 Cloudflare 的 CDN 加速
相关推荐
jingfeng5141 分钟前
C++ STL-string类底层实现
前端·c++·算法
cyforkk34 分钟前
Hexo 双分支部署指南:从原理到 Netlify 实战
前端
小小愿望38 分钟前
前端读取与导出XLSX文件实战指南(React+Ant Design)
前端
小小愿望1 小时前
JavaScript生成随机数的全面指南:别再只会用Math.random()了!
前端
用户847181054191 小时前
wps加载项ribbon.js 与 ribbon.xml 的交互
前端
Jackson__1 小时前
RAG究竟是什么?一文搞懂大模型的记忆增强术
前端
雲墨款哥1 小时前
JS算法练习-Day10-判断单调数列
前端·javascript·算法
前端市界1 小时前
前端视角: PyQt6+Vue3 跨界开发实战
前端·qt·pyqt
阅文作家助手开发团队_山神1 小时前
第四章:Flutter自定义Engine本地依赖与打包流程
前端·flutter
JuneXcy1 小时前
11.web api 2
前端·javascript·html