首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >独立 App 配置 CDN 记录,腾讯云 CDN 加速阿里云 OSS(深圳节点)

独立 App 配置 CDN 记录,腾讯云 CDN 加速阿里云 OSS(深圳节点)

原创
作者头像
小虎云飞机@xhyunbaba
发布2026-07-14 18:19:33
发布2026-07-14 18:19:33
1050
举报

本文由小虎云飞机@xhyunbaba撰写

腾讯云 CDN 加速阿里云 OSS(深圳节点)完整配置方案

一、方案核心原理

你的痛点:海外用户直连深圳 OSS 跨洋延迟高。

腾讯云全球 CDN中转:

  1. 国内 / 海外用户就近连接腾讯云全球边缘节点(东南亚、欧美、日韩节点全覆盖)
  2. 节点第一次无缓存时,回源拉取深圳 OSS 图片并缓存
  3. 后续同资源直接从就近节点返回,彻底解决海外加载慢
  4. APP 统一使用腾讯云 CDN 域名,不再直接请求 OSS 域名

二、前期准备清单

1. 域名与备案(关键)

  • 准备一个子域名作为图片加速域名,例如 img.appxxx.com
  • 加速区域选全球(兼顾国内 + 海外用户):域名必须完成工信部 ICP 备案;
  • 若只做海外加速:仅境外区域无需备案,但国内用户访问会受限,不推荐 APP 使用腾讯云

2. 阿里云侧准备(私有桶必做,公开桶可跳过鉴权)

步骤 1:创建 RAM 子账号,授权 OSS 只读
  1. 阿里云 RAM 控制台 → 身份安全 → 用户 → 创建用户,勾选OpenAPI 调用访问
  2. 复制 AccessKey IDAccessKey Secret(后续 CDN 鉴权要用,只显示一次)
  3. 给该用户附加权限:AliyunOSSReadOnlyAccess(只读,最小权限安全)
步骤 2:获取 OSS 源站地址

进入深圳 Bucket → 概览 → 外网访问域名,格式:

xxx.oss-cn-shenzhen.aliyuncs.com

步骤 3:OSS 配置跨域 CORS(APP / 前端避免跨域报错)

Bucket → 数据安全 → 跨域设置 → 创建规则:

  • 来源:*(APP 客户端通用,正式环境可限定业务域名)
  • 允许 Methods:勾选 GET、HEAD(图片仅读)
  • 允许 Headers:*
  • 暴露 Header:ETag, x-oss-request-id
  • 缓存时间:86400

3. 腾讯云账号准备

  1. 完成实名认证,开通 CDN 服务(免费开通,按量计费)
  2. 申请 SSL 证书(免费 TrustAsia 证书,给加速域名 HTTPS,APP 强制 HTTPS)

三、腾讯云 CDN 添加加速域名核心配置

1. 新增域名基础信息

CDN 控制台 → 域名管理 → 添加域名

  1. 加速域名img.appxxx.com
  2. 加速区域全球(国内 + 海外全部覆盖,解决海外慢核心)
  3. 业务类型:静态加速(图片资源专用,缓存策略最优)

2. 源站配置(对接阿里云 OSS)

  • 源站类型:第三方对象存储
  • 第三方存储厂商:阿里云 OSS
  • 回源协议:HTTPS(OSS 默认支持 https,安全且避免跳转)
  • 源站地址:粘贴你的深圳 OSS 外网域名 xxx.oss-cn-shenzhen.aliyuncs.com
  • 回源 HOST:自动填充 OSS 域名,无需修改
  • 私有存储桶访问(重要):
    • 如果你的 OSS 是私有读:开启开关,填入 RAM 子账号的 AccessKey ID/Secret
    • 如果 OSS 是公共读:直接关闭此开关即可

3. 缓存策略优化(图片资源专用,大幅提升命中率)

进入域名高级配置 → 缓存规则设置

  1. 匹配规则:*.jpg,*.png,*.webp,*.jpeg,*.gif
  2. 缓存过期时间:30 天(图片几乎不改动,长缓存减少回源)
  3. 缓存键:忽略 URL 参数(图片无版本参数时开启;带 hash 版本号则关闭)
  4. 忽略缓存头部:开启(覆盖 OSS 原生 Cache-Control,统一 CDN 缓存规则)

4. HTTPS 配置(APP 强制要求)

  1. HTTPS 访问:开启
  2. 证书管理:选择已申请的 img.appxxx.com SSL 证书
  3. 强制跳转 HTTPS:开启(避免 APP 混合内容报错)

5. 跨域补充配置(双层保障,OSS+CDN 双配置)

高级配置 → HTTP 响应头设置,新增规则:

  • 设置 Access-Control-Allow-Origin = *
  • 设置 Access-Control-Allow-Methods = GET,HEAD 解决 APP 客户端加载图片跨域拦截问题腾讯云

6. 海外加速专项优化(针对你的海外用户痛点)

  1. 境外回源超时:调整为 15s(跨境网络波动更大)
  2. 境外带宽封顶:按需设置,防止盗刷高额账单
  3. 分片回源:开启大文件分片,大图加载更稳定

四、域名 DNS 解析生效

  1. CDN 域名添加完成后,控制台会生成 CNAME 地址(形如 img.appxxx.com.cdn.dnsv1.com
  2. 到你的域名 DNS 服务商(阿里云 / 腾讯云 / Cloudflare),添加 CNAME 记录:
    • 主机记录:img
    • 记录类型:CNAME
    • 记录值:CDN 分配的 CNAME 地址
  3. 等待解析生效(国内 10 分钟内,海外最多 24 小时)
  4. 验证:ping img.appxxx.com 显示腾讯云 CDN 节点 IP 即成功

五、APP 业务改造(最终切换图片地址)

旧地址(直连 OSS,海外慢)

https://xxx.oss-cn-shenzhen.aliyuncs.com/photo/123.png

新地址(腾讯全球 CDN,就近加速)

https://img.appxxx.com/photo/123.png

  1. 后端 / APP 内全局替换图片域名,统一走 CDN 域名
  2. 灰度测试:少量海外用户切 CDN 域名,对比加载速度
  3. 全量切换后,可观察 CDN 监控:境外命中率、回源流量、延迟指标

六、防盗链 & 成本控制(必配,防止高额账单)

  1. Referer 防盗链:设置仅允许你的 APP 业务域名 / 空 Referer(APP 客户端无网页 Referer,勾选允许空 Referer)
  2. URL 时间戳鉴权:高推荐,给图片链接加时效签名,杜绝盗刷
  3. 用量封顶:设置每日流量告警阈值,超量短信提醒
  4. 缓存预热:热门图片手动预热到海外节点,首次访问无回源延迟

七、常见坑 & 排错

  1. 海外访问 403
    • 私有桶未填对 RAM 密钥;RAM 账号无 OSS 只读权限;OSS 跨域规则缺失
  2. 国内快、海外依然慢
    • 加速区域选错(只选了国内),必须改为全球加速
  3. 图片缓存不更新
    • 修改图片后,CDN 控制台手动刷新对应 URL 缓存
  4. 回源失败
    • 检查 OSS 外网域名是否正确、回源协议 HTTPS 是否开启、OSS 是否封禁海外 IP

八、补充优化方案(极致降低海外延迟)

如果海外用户体量很大,可搭配双层优化:

  1. 现有架构:腾讯全球 CDN → 深圳 OSS(低成本改造,当前方案)
  2. 进阶方案:阿里云 OSS 香港存储桶 + 腾讯 CDN 境外节点回源香港桶,跨境回源延迟更低,但需要迁移图片,成本更高。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、方案核心原理
  • 二、前期准备清单
    • 1. 域名与备案(关键)
    • 2. 阿里云侧准备(私有桶必做,公开桶可跳过鉴权)
      • 步骤 1:创建 RAM 子账号,授权 OSS 只读
      • 步骤 2:获取 OSS 源站地址
      • 步骤 3:OSS 配置跨域 CORS(APP / 前端避免跨域报错)
    • 3. 腾讯云账号准备
  • 三、腾讯云 CDN 添加加速域名核心配置
    • 1. 新增域名基础信息
    • 2. 源站配置(对接阿里云 OSS)
    • 3. 缓存策略优化(图片资源专用,大幅提升命中率)
    • 4. HTTPS 配置(APP 强制要求)
    • 5. 跨域补充配置(双层保障,OSS+CDN 双配置)
    • 6. 海外加速专项优化(针对你的海外用户痛点)
  • 四、域名 DNS 解析生效
  • 五、APP 业务改造(最终切换图片地址)
    • 旧地址(直连 OSS,海外慢)
    • 新地址(腾讯全球 CDN,就近加速)
  • 六、防盗链 & 成本控制(必配,防止高额账单)
  • 七、常见坑 & 排错
  • 八、补充优化方案(极致降低海外延迟)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档