當您需要加速OSS上的靜態資源時,可以通過阿里雲CDN加速OSS網域名稱,實現靜態資源的訪問加速。通過本文您可以詳細瞭解CDN加速OSS的應用情境,以及通過OSS控制台實現CDN加速OSS的操作方法。

前提条件

背景資訊

OSS來源站點上儲存的靜態資源包括靜態指令碼、圖片、附件、音頻和視頻。當終端使用者請求訪問或下載靜態資源時,CDN對OSS來源站點上的靜態資源進行加速,將來源站點上的資源緩衝到CDN加速節點上,系統自動調用離終端使用者最近的CDN節點上已緩衝的資源,實現資源加速。

OSS作為CDN的來源站點,通過CDN加速分發,使用者通過CDN節點就近獲得資源,架構優勢如下:
  • 使用者訪問網站資源,全部通過CDN,降低來源站點壓力。
  • 使用CDN流量,單價低於直接存取OSS產生的外網流出流量。
  • 從距離用戶端最近的CDN節點擷取資源,減少網路傳輸距離,保證靜態資源傳輸品質。

操作步驟

  1. 在OSS控制台上,綁定自訂網域名。
    1. 登录OSS管理控制台
    2. 单击Bucket列表,之后单击目标Bucket名称。
    3. 选择传输管理 > 域名管理
    4. 单击绑定域名,在绑定域名面板的域名文本框填写您的域名。
      请勿打开自动添加CNAME开关。

      若提示域名冲突,表示该域名已绑定至其他Bucket。此时,您可以更换域名或通过验证域名所有权强制绑定域名。验证域名所有权会解除域名与其他Bucket的绑定关系。更多信息,请参见管理網域名稱

    5. 单击提交
  2. 在OSS控制台上,配置CDN加速服務。
    1. 在網域名稱列表中,找到需要配置CDN加速的網域名稱。
    2. 單擊目標網域名稱右側的 未配置 ,系統自動跳轉到CDN管理主控台。


  3. 在CDN控制台上,添加OSS網域名稱。
    1. 登入 CDN控制台
    2. 在左側導覽列,單擊 域名管理
    3. 域名管理頁面,單擊 添加域名
    4. 添加域名頁面,完成以下配置。

      第一部分:配置基本資料

      參數 說明
      加速域名
      注意事項如下:
      • 加速網域名稱一般使用子網域名稱或泛網域名稱,且僅支援全英文小寫網域名稱,不支援中文網域名稱加速。

        樣本:您的網域名稱是 example.com ,加速網域名稱可以是 example.com 的子網域名稱,例如 cdntest.example.com

      • 支援泛網域名稱加速,例如 *.example.com 。泛網域名稱加速規則,請參見 泛網域名稱加速規則
        说明
        • 泛網域名稱和子網域名稱必須在同一個帳號下。您添加網域名稱時CDN會進行檢查,如果泛網域名稱或子網域名稱被添加到不同帳號,系統會報錯。如果您無法自行解決,請 提交工单處理。
        • 如果泛網域名稱未被添加到任何CDN帳號下,則支援在多個帳號下添加不同的子網域名稱。
      • 加速網域名稱不允許重複添加。

        如果出現網域名稱已被添加到其他雲產品(例如ApsaraVideo for VOD、ApsaraVideo for Live、全站加速等)中的提示,您可以 提交工單 處理。

      • 每個阿里雲帳號最多可以添加50個加速網域名稱。

        如果您網域名稱的總頻寬日均峰值大於50 Mbps,且業務無風險,可 提交工單 申請增加網域名稱個數。

      • 加速內容必須合法且符合CDN業務規範。詳細資料,請參見 網域名稱准入標準
      业务类型
      业务类型配置後不允許修改,需謹慎選擇。
      • 圖片小檔案:適用於電商類、網站類、遊戲圖片類等小型的靜態資源加速情境。
      • 大檔案下載:適用於大於20 MB的靜態檔案加速情境。
      • 視音頻點播:適用於音頻或視頻檔案加速情境。
      • 全站加速 :適用於含有大量動態和靜態內容混合,且多為動態資源請求的加速情境。

        當業務類型選擇 全站加速時,您需根據介面提示,前往全站加速控制台添加網域名稱並進行相關配置。

      加速区域
      選擇加速地區。加速地區為 仅中国内地全球時,加速網域名稱必須備案,您可以登入 阿里雲ICP代備案管理系統 完成備案。由於工信部備案系統存在資料延遲,剛完成備案的網域名稱請在8小時後再配置。
      说明 不同的加速地區價格不一樣,請根據您的實際需求選擇。計費詳情,請參見 CDN定價
      • 仅中国内地:全球使用者訪問均會調度至中國內地加速節點進行服務(海外使用者的訪問流量將會被調度至華東電信的CDN節點)。
      • 全球:全球使用者訪問將會擇優調度至最近的加速節點進行服務。
      • 全球(不包含中国内地):全球使用者訪問均會調度至中國香港、中國澳門、中國台灣以及其他國家和地區的加速節點進行服務(中國內地使用者將會被調度至日本、新加坡和中國香港的CDN節點)。

      第二部分:配置來源站點資訊

      參數 說明
      源站信息 選擇 OSS域名,並選擇您在OSS控制台上綁定的自訂網域名。為Bucket綁定自訂網域名的方法,請參見 管理網域名稱
      優先順序

      源站优先级支持设置主备,主优先级大于备优先级。用户请求通过阿里云CDN回源时,会优先回源到优先级为主的源站地址。

      例如,有A、B两个源站,A源站的优先级为主,B源站的优先级为备,则用户请求通过阿里云CDN回源时会优先回源到A源站,如果A源站出现故障,将会回源到B源站,当A源站恢复正常后会从B源站切换回A源站。

      權重

      当多个源站的优先级相同时,阿里云CDN会按照源站的权重分配用户请求回源到不同源站的比例,实现按权重的负载均衡。权重的取值范围是1~100,数值越大,源站分配到的用户请求比例越高。默认权重值为10,您可以根据业务需求,自行设置权限值。

      例如,有A、B两个源站,两个源站的优先级都是主,A源站的权重为80,B源站的权重为20,则用户请求将会按照8:2的比例在A、B两个源站之间分配。

      端口
      默认回源端口为80,根据您源站的支持情况,可自定义设置回源端口,允许设置的端口范围为1~65535。
      • 回源端口设置为443:以HTTPS协议回源。
      • 回源端口设置为80或其他自定义端口:以HTTP协议回源。如果需要以HTTPS协议回源到其他自定义端口,请 提交工單 处理。
        说明
        • 如果开启了回源协议功能(默认为关闭状态),自定义端口会失效。关闭回源协议的方法,请参见配置回源協議
        • 当源站选择OSS域名时,回源端口是否支持自定义端口,取决于OSS产品。
    5. (可選)單擊 下一步
      您首次在CDN控制台添加一個新網域名稱時,需要完成網域名稱歸屬權驗證。如果您之前已經驗證通過,請忽略該步驟。具體操作,請參見 驗證網域名稱歸屬權
    6. 等待人工審核。
      说明 如果您的加速網域名稱無需人工審核,將直接進入下一個配置環節,您可根據實際業務需求,完成推薦配置。

      審核時間約1~2個工作日,如果您的來源站點是阿里雲ECS或OSS,審核速度會加快,您也可以 提交工单加急審核。

      加速網域名稱審核通過後,您可以在 域名管理頁面查看,狀態顯示為 正常运行,表示添加成功。

  4. 在CDN控制台的 域名管理頁面,複製加速網域名稱對應的CNAME記錄值。
  5. 在阿里雲Alibaba Cloud DNS控制台上,配置CNAME。
    本文以阿里雲Alibaba Cloud DNS為例,為您介紹配置CNAME的方法。
    1. 使用 加速網域名稱所在的阿里雲帳號 ,登入 Alibaba Cloud DNS控制台
    2. 網域名稱解析 頁面,找到您的網域名稱,在網域名稱右側單擊 解析設定
      说明 非阿里雲註冊的網域名稱,需要先完成網域名稱添加,才能進行網域名稱解析設定。 具體操作,請參見 網域名稱管理
    3. 單擊 添加記錄 ,添加CNAME記錄。
      说明
      • 精準網域名稱的CNAME解析優先順序大於泛網域名稱的CNAME解析。如果您的加速網域名稱為泛網域名稱,且主機記錄設定為星號(*)時,需刪除泛網域名稱下所有已生效的次層網域的解析記錄。
      • 添加CNAME記錄時如果遇到衝突問題,建議您更換一個加速網域名稱或調整衝突的記錄。
      參數 說明 填寫範例
      記錄類型 選擇CNAME。 CNAME
      主機記錄 主機記錄指加速網域名稱的首碼。
      • 加速網域名稱為 testcdn.aliyun.com ,主機記錄為 testcdn
      • 加速網域名稱為 www.aliyun.com ,主機記錄為 www
      • 加速網域名稱為 aliyun.com ,主機記錄為 @
      • 加速網域名稱為 *.aliyun.com ,主機記錄為 *
      解析線路 預設線路。 保持預設
      記錄值
      輸入加速網域名稱對應的CNAME記錄值。
      说明 一個加速網域名稱對應一個CNAME記錄值,次層網域不能使用主網域名稱的CNAME記錄值。如果您要加速次層網域,需要將次層網域也添加到CDN上並解析到對應的CNAME記錄值,或者在CDN上添加泛網域名稱,泛網域名稱的CNAME可以被次層網域使用。添加泛網域名稱或次層網域,請參見 添加加速網域名稱
      all.example.com.w.kunlunsl.com
      TTL TTL為緩衝時間,數值越小,修改記錄後各地生效時間越快,預設為10分鐘。 保持預設
    4. 單擊 確認 ,完成添加。
      成功配置CNAME且生效後加速服務會立即生效。新增CNAME記錄即時生效,修改CNAME記錄在10分鐘後生效(具體生效時間長短取決於網域名稱DNS解析配置的TTL時間長度,10分鐘為TTL的預設時間長度)。成功配置CNAME後狀態更新約有10分鐘延遲,CDN控制台的網域名稱列表中可能仍顯示“未配置CNAME”,請先忽略。
  6. 在本地PC機上,驗證CNAME配置是否生效。
    方法一:在CDN控制台的CNAME設定精靈中,單擊 點擊查詢 ,一鍵驗證。
    方法二:通過 ping 命令驗證。
    1. 開啟Windows作業系統中的cmd程式。
    2. 在命令列中 ping 加速網域名稱,如果返回的解析結果和CDN控制台上該加速網域名稱的CNAME值一致,則表示CDN加速已經生效。
  7. 在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加速網域名稱為 example.com ,需要訪問根目錄下的檔案 123.jpg 時,訪問地址為 http://example.com/123.jpg

  • 通過用戶端訪問OSS資源

    可以將用戶端中OSS的Bucket網域名稱配置為CDN加速網域名稱,再通過CDN加速網域名稱訪問。