開啟忽略參數後,CDN 節點會去除請求 URL 參數(? 之後的部分),使不同參數的請求命中同一緩衝,從而提高快取命中率。本文介紹忽略參數的配置方法、功能對比以及使用建議。
功能對比與選擇
自訂Cache Key與忽略參數存在衝突:同時配置忽略參數和自訂 Cache Key 的情況下,忽略參數功能將會失效。
自訂Cache Key可替代忽略參數的緩衝鍵配置,且功能更全面,推薦優先使用。配置對比:
情境
忽略參數配置
自訂Cache Key配置
在緩衝鍵中忽略所有請求參數
忽略參數設定為是,保留指定參數留空
添加一條請求參數處理策略:
操作方式:保留
參數名:設為任意不存在的參數名,例如 example-argument
在緩衝鍵中僅保留請求參數key1
忽略參數設定為是,保留指定參數設定為
key1添加一條請求參數處理策略:
操作方式:保留
參數名:key1
在緩衝鍵中僅刪除請求參數key1
刪除指定參數設定為
key1添加一條請求參數處理策略:
操作方式:刪除
參數名:key1
重寫回源參數可替代忽略參數的回源參數重寫,且功能更全面,推薦優先使用。
功能介紹
忽略參數
作用 | 適用情境 |
去除請求 URL 參數( | 當 URL 參數與資源內容無關(如使用者 UID、渠道來源、推薦碼等),建議開啟忽略參數。例如,以下兩個請求訪問同一資源但攜帶不同 UID: A 使用者: B 使用者: 未開啟忽略參數時,CDN 節點會將 A、B 使用者的 URL 視為不同資源,無法命中同一緩衝,每次都需回源。開啟忽略參數後,CDN 節點會去除 URL 參數,統一使用 |
配置URL鑒權的優先順序高於忽略參數。鑒權方式A的鑒權資訊包含URL參數部分,CDN會先完成鑒權判斷,通過後再快取複本。
保留回源參數
作用 | 適用情境 |
回源時保留原始 URL 全部參數,確保來源站點能接收到使用者的關鍵資訊。 | 開啟忽略參數後,CDN 節點預設使用去除參數後的 URL 回源。以上述樣本為例,A、B 使用者的回源請求都使用 |
操作步驟
登入CDN控制台。
在左側導覽列,單擊域名管理。
在網域名稱列表單擊目標網域名稱,在左側導覽列,單擊性能优化,進入效能最佳化配置頁面。
單擊忽略參數地區的修改配置,根據實際需求選擇模式並完成配置。
配置完成後,單擊確定儲存。
模式:保留指定參數
參數 | 說明 | 樣本 |
忽略参数 |
| 假設原始URL為
|
保留指定參數 | 配置需要保留的參數名,最多10個,多個參數用英文逗號(,)分隔。 | |
保留回源参数 |
| |
規則條件 | 規則條件能夠對使用者請求中攜帶的各種參數資訊進行識別,以此來決定某個配置是否對該請求生效。 重要
引用規則條件時,按所關聯規則條件的優先順序匹配,而非按功能自身的配置順序匹配。
|
模式:刪除指定參數
參數 | 說明 | 樣本 |
刪除指定參數 | 配置需要刪除的參數名,最多10個,多個參數用空格分隔。 | 假設原始URL為
|
保留回源参数 |
| |
規則條件 | 規則條件能夠對使用者請求中攜帶的各種參數資訊進行識別,以此來決定某個配置是否對該請求生效。 重要
引用規則條件時,按所關聯規則條件的優先順序匹配,而非按功能自身的配置順序匹配。
|
使用情境樣本
利用忽略參數應對通過 URL 參數繞過緩衝的請求
當攻擊者或爬蟲通過添加隨機無意義參數(如 ?timestamp=xxx、?random=xxx)請求同一資源時,CDN 會將每個帶不同參數的請求視為獨立資源,導致快取命中率降低和回源流量激增。
此時應開啟忽略參數功能(或配置忽略所有參數),使攜帶不同隨機參數的請求命中同一緩衝,從而有效降低回源壓力。例如,配置忽略參數後,以下請求將命中同一緩衝:
http://example.com/page.html?t=123456http://example.com/page.html?t=789012http://example.com/page.html?random=abc
上述請求在開啟忽略參數後,統一使用 http://example.com/page.html 匹配緩衝,有效防禦通過 URL 參數繞過緩衝的攻擊行為。