当您需要加速OSS上的静态资源时,可以通过阿里云CDN加速OSS域名,实现静态资源的访问加速。通过本文您可以详细了解CDN加速OSS的应用场景,以及通过OSS控制台实现CDN加速OSS的操作方法。

限时套餐

现在购买CDN+OSS组合,享受专属优惠,更助您搭配省心,套餐价格低至5.5折。

前提条件

背景信息

阿里云CDN配合精准的调度系统,将您对静态资源的请求分配至最近节点,使您以最快的速度读取到所需的资源,有效解决网络拥塞问题,提高用户访问的响应速度。

OSS源站上存储的静态资源包括静态脚本、图片、附件和音频/视频。当终端用户请求访问或下载静态资源时,CDN对OSS源站上的静态资源进行加速,源站上的资源缓存到CDN的加速节点,系统自动调用离终端用户最近的CDN节点上已缓存的资源。加速OSS架构如下图所示。场景图
OSS作为CDN的源站,通过CDN加速分发,用户通过CDN节点就近获得文件,架构优势如下:
  • 用户访问网站资源,全部通过CDN,降低源站压力。
  • 使用CDN流量,单价低于OSS直接访问外网流量。
  • 资源从距离客户端最近的CDN节点获取,减少网络传输距离,保证静态资源质量。

本文以阿里云云解析DNS为例,介绍配置CNAME的操作方法。

操作步骤

  1. 在OSS控制台上,配置阿里云CDN加速。
    1. 登录OSS管理控制台
    2. 左侧导航栏单击Bucket 列表
      列表
    3. Bucket 列表中,单击目标Bucket名称。
    4. 在存储空间的导航栏中单击传输管理 > 域名管理
    5. 域名管理页签,单击需要配置阿里云CDN加速域名对应的未配置,系统自动跳转至CDN管理控制台
      未配置
  2. 在CDN控制台上,添加域名。
    1. CDN管理控制台添加域名页面,根据如下表格填写域名信息。
      参数 参数分类 说明
      加速域名 -
      输入用户域名,例如:ch.aliyun.com。注意事项如下:
      • 加速域名一般使用子域名或泛域名,例如: cdntest.example.com
      • 支持泛域名加速,不支持中文域名加速,请注意泛域名填写规则如: *.test.com。详细规则请参见泛域名加速规则
      • 加速域名不允许重复添加,如出现域名已添加的提示,请提交工单处理
      • 如果泛域名未被添加到任何CDN账号下,则其支持多个CDN账号添加不同的子域名。
      • 每个账户下最多支持50个加速域名,如需扩容请提交工单处理
      • 加速内容必须合法且符合CDN业务规范,详情请参见 CDN服务使用限制
      资源分组 - 选择加速域名所属的资源组。
      说明 新开通CDN服务的用户,不显示资源分组。如果您需要使用资源组功能,则需要登录资源管理控制台,根据界面提示开通资源组服务,并创建资源组,操作方法请参见创建资源组
      业务类型 图片小文件 若您网站的加速内容多为小型的静态资源 (如小文件、图片、网页样式文件等),推荐您选择图片小文件业务类型。
      大文件下载 若您的加速内容为较大的文件(大于20MB的静态文件),例如游戏安装包、应用更新、手机ROM升级、应用程序包下载等场景,推荐选择大文件下载业务类型。
      视频点播加速 若您需要加速音频或视频文件,例如音乐、视频的点播业务场景,推荐使用视音频点播业务类型。
      全站加速

      如果您的网站或应用含有大量动静态内容混合、且较多为动态资源请求,您可以使用全站加速。通过简单配置即可使系统分别加速动静态内容,静态内容高速缓存,动态内容通过阿里云的最优链路算法及协议层优化快速回源获取。

      当您选择全站加速业务类型时,根据界面提示前往全站加速控制台,添加域名并进行相关配置,操作方法请参见添加加速域名

      安全加速 如果您的网站易遭受攻击且必须兼顾加速的业务场景,则需要使用安全加速功能,提升全站安全性。

      当您选择安全加速业务类型时,根据界面提示前往安全加速控制台,添加域名并进行相关配置,操作方法请参见添加加速域名

      源站信息 OSS域名 选择您在OSS控制台上绑定的自定义域名,操作方法请参见绑定自定义域名
      端口 -
      根据您的需求选择访问端口。
      • 80端口

        以HTTP协议访问资源。

      • 443端口

        以HTTPS协议访问资源。

      加速区域 仅中国内地 如果选择仅中国内地,则需要工信部备案。域名备案方法,请参见加速域名备案
      全球 如果选择全球,则需要工信部备案。域名备案方法,请参见加速域名备案
      全球(不包含中国内地) 如果选择全球(不包含中国内地),则无需工信部备案。
      china
    2. 单击下一步
      当您的加速域名审核通过后,会出现在域名管理的域名列表中。状态为正常运行,表示添加成功。添加域名成功
  3. 在CDN控制台上,获取CNAME。
    1. 登录CDN控制台
    2. 在左侧导航栏,单击域名管理
    3. 进入域名管理页面,复制加速域名对应的CNAME值。
      域名管理
  4. 在阿里云云解析DNS控制台上,配置CNAME。
    1. 登录阿里云云解析DNS控制台
    2. 进入域名解析页面,在您需要设置的域名后面,单击解析设置
    3. 单击添加记录,添加CNAME记录。
      说明
      • 您添加CNAME记录时如果遇到冲突问题,建议更换一个加速域名或调整冲突的记录。详细信息,请参见域名解析冲突
      • 一个加速域名对应一个CNAME地址,主域名的CNAME地址不能被二级域名使用。如果您需要加速二级域名,需将二级域名也添加到CDN上,并解析到对应的CNAME地址,或者在CDN上添加泛域名,泛域名的CNAME可以被二级域名使用。
      • 精准域名解析的CNAME大于泛域名解析的CNAME,即当您的加速域名为泛域名,且主机记录设置为星号(*)时,需删除泛域名下所有已生效的二级域名的解析记录。
      添加记录
      • 记录类型:选择CNAME
      • 主机记录:加速域名的前缀。
        如果您的加速域名为 主机记录为
        testcdn.aliyun.com testcdn
        www.aliyun.com www
        aliyun.com @
        *.aliyun.com *
      • 解析线路:默认值。
      • 记录值:输入加速域名对应的CNAME地址。
      • TTL:默认值。
    4. 单击确认
      成功配置CNAME且生效后,加速服务会立即生效。
      说明
      • 新增CNAME记录实时生效,修改CNAME记录在72小时内生效。
      • 成功配置CNAME后状态更新约有10分钟延迟,控制台的域名列表页可能仍提示“未配置CNAME”,请您暂时忽略。
  5. 在本地PC机上,验证CNAME配置是否生效。
    1. 打开Windows的CMD命令行程序。
    2. 在命令行中ping加速域名,如果返回的解析结果和CDN控制台上该加速域名的CNAME值一致,则表示CDN加速已经生效。
      CNAME生效验证
  6. 在OSS控制台上,打开加速域名的CDN缓存自动刷新开关。
    说明

    执行本操作后,如果Object有更新,OSS会自动将更新后的Object刷新到CDN的缓存节点上,从而实现文件更新后实时刷新缓存的功能。

    当您解除Bucket与用户域名之间的绑定关系后,OSS控制台将不支持CDN缓存自动刷新操作,您可以在CDN控制台进行配置,操作方法请参见配置刷新和预热

    1. 登录OSS管理控制台
    2. 左侧导航栏单击Bucket 列表
    3. Bucket 列表中,单击目标Bucket名称。
    4. 在存储空间的导航栏中单击传输管理 > 域名管理
    5. 域名管理页签,打开加速域名的CDN缓存自动刷新开关。
      域名管理

后续步骤

配置CNAME生效后,如果您直接通过CDN加速域名访问OSS上的资源,则会提示错误AccessDenied,可以通过如下方法访问OSS资源 。
  • 当您通过网页访问OSS资源时,可以通过CDN加速域名+文件访问路径的方式访问。例如:当CDN加速域名为mydomain.cn,需要访问根目录下的文件123.jpg时,访问地址为http://mydomain.cn/123.jpg
  • 当您通过客户端访问OSS资源时,可以将客户端中OSS的Bucket域名配置为CDN加速域名,再通过CDN加速域名访问。