全部產品
Search
文件中心

:CDN加速靜態資源時如何設定伺服器端的緩衝到期時間

更新時間:Jun 30, 2024

CDN加速靜態資源時,將來源站點上的資源緩衝到距離用戶端最近的CDN節點上。當您訪問該靜態資源時,可直接從緩衝中擷取,本文主要介紹如何設定伺服器端的緩衝到期時間。

詳細資料

到期時間控制支援三個維度,優先順序依次為控制台設定>來源站點Header設定>Cache的預設原則設定

  • 關於控制台設定的詳細說明,請參見配置緩衝到期時間

  • 關於來源站點Header設定的詳細說明,請參見WebServer緩衝原則設定

  • Cache的預設策略是在您既沒有在控制台設定到期時間,也沒有在來源站點設定到期時間的情況下,會執行一個預設的全域原則,既保證加速效果,又避免因為動態檔案快取導致的問題。關於Cache的預設原則設定的詳細說明,請參見CDN節點預設緩衝策略

    說明

    關於OSS緩衝原則設定,請參見管理檔案中繼資料

WebServer緩衝原則設定

CDN節點預設緩衝策略

重要
  • 因為網站開發及其相關技術人員更清楚自身網站的商務邏輯、靜態和動態因素,所以建議您通過控制台根據檔案類型和檔案所在目錄,詳情請參見配置緩衝到期時間

  • 如果您已經配置了緩衝策略,那麼Cache的預設緩衝策略不生效。

  • 預設情況下,CDN節點將根據公式計算出預設的緩衝時間。為了便於理解,此處將介紹預設緩衝時間的計算公式和相關樣本。

    • 計算公式。該公式分為如下三個步驟。

      說明

      緩衝時間為t,單位為秒(s);Curtime為目前時間,Last_Modified為來源站點的Last-Modified回應標頭。

      1. 計算t1的值。

        t1 = (Curtime - Last_Modified) * 0.1
      2. 將上一步計算的t1之與10進行比較,取最大值為t2。

        t2 = max(10,t1)
      3. 通過上一步計算的t2值與3600進行比較,取最小值為t,則t為緩衝時間。

        t = min(t2,3600)
    • 樣本如下。

      • 當對象的Last-Modified20140801 00:00:00,目前時間Curtime為20140801 00:10:00,則t1=(Curtime-Last_modified)*0.1=60s,t2=max(10,t1)=60s,t=min(t2,3600)=60s,那麼緩衝時間為60s。

      • 當對象的Last-Modified20140801 00:00:00,目前時間Curtime為20140802 00:00:00,則t1=(Curtime-Last_modified)*0.1=8640s,t2=max(10,t1)=8640s,t=min(t2,3600)=3600s,那麼緩衝時間為3600s。

      • 當對象的Last-Modified20140801 00:00:00,目前時間Curtime為20140801 00:01:00, 則t1=(Curtime-Last_modified)*0.1=6s,t2=max(10,t1)=10s,t=min(t2,3600)=10s,那麼緩衝時間為10s。

  • 如果來源站點沒有Last-Modified回應標頭,但有ETag,則該對象極有可能是靜態資源,將其預設緩衝時間設定為dft_expires指令配置的最小值。

  • 如果來源站點沒有Last-Modified回應標頭,也沒有ETag,則認為該對象為動態內容,將其預設緩衝時間設定為0,每次都回源。