ESA提供了通過建立自訂條件來組合各種功能配置的方式,協助您限制特定功能在特定條件下生效。
當您為了對部分業務進行特殊的配置,如需要進行請求轉換、內容重新導向、配置緩衝策略等常規配置,或針對安全防護、流量管控需要精細化管理,您可以通過規則功能使用相同的文法和配置邏輯來篩選出特定特徵的請求,並為請求匹配需要執行的對應功能配置。
簡單配置樣本
配置特定路徑下資源的邊緣緩衝時間
例如在/content
路徑下配置了以月度進行更新的靜態資源,為平衡資源的持久性和及時性,可以將/content
路徑下的資源在ESA邊緣節點上的緩衝時間調整為30天。
配置請求過濾條件,可以選擇下面任意一種方式:
使用控制台控制項配置:
使用運算式編輯器配置:
(http.request.uri.path eq "/content")
配置執行邊緣緩衝時間:
配置特殊請求的重新導向規則
例如將來自中國內地的請求由example.com
重新導向到example.com.cn
。
配置請求過濾條件,可以選擇下面任意一種方式:
使用控制台控制項配置:
使用運算式編輯器配置:
(http.host eq "example.com" and ip.geoip.country eq "CN")
配置執行重新導向目標URL:
規則配置構成
當客戶的請求達到ESA節點時,ESA會按照您的規則配置來對請求進行過濾並進行對應的處理。
ESA的規則配置都包含以下兩個部分:
規則配置 = 規則運算式 + 規則執行動作
通過配置規則運算式,對請求進行過濾;通過配置規則執行動作,對匹配的請求執行操作。規則運算式的文法適用於ESA中所有的規則相關配置,因此您在一個功能的規則配置方法可以快速地遷移至其他功能的規則使用中,更多有關規則的建立及部署請參見:規則運算式的組成。
生效優先順序
規則配置優先順序高於全域配置:針對同一個功能,規則中配置的生效優先順序更高。因此您可以在基礎的通用功能配置上,通過規則來對特定的請求生效特定的功能配置。
以邊緣節點緩衝到期時間為例,若您在全域配置-邊緣緩衝到期時間中配置了邊緣到期時間為12小時,並且在規則-配置邊緣緩衝到期時間中配置了/content
下的資源在邊緣節點上的到期時間為30天。那麼當請求的資源路徑在/content
路徑下時,邊緣節點將把該資源的緩衝到期時間調整為30天。對於請求的資源不在/content
路徑下,則在邊緣節點中會統一調整緩衝到期時間為12小時。
規則列表中順序越靠前的優先順序越高:針對同一個規則功能,規則執行的順序是從上到下,依次執行。因此在實際業務使用中,當請求同時符合多個規則的觸發條件時,您可以將您期望優先執行的動作通過拖拽
按鈕調整至更靠上的位置。
以緩衝規則為例,如果您同時存在以下2條規則:
規則1:/content
路徑下的資源到期時間為30天。
規則2:尾碼為.jpg
的檔案快取時間為60天。
不同套餐的支援情況
規則 | Entrance | Pro | Premium | Enterprise |
規則 | Entrance | Pro | Premium | Enterprise |
安全規則 | 10條 | 25條 | 50條 | 125條 |
瀏覽器緩衝到期時間 | 2小時 | 1小時 | 1秒 | 1秒 |
邊緣緩衝到期時間 | 2小時 | 1小時 | 1秒 | 1秒 |
自訂連接埠緩衝 | 不支援 | 不支援 | 不支援 | 支援 |
緩衝保持 | 不支援 | 不支援 | 不支援 | 支援 |
重新定向規則 | 10條 | 25條 | 50條 | 125條 |
網路最佳化規則 | 10條 | 25條 | 50條 | 100條 |
檔案壓縮 | 不支援 | 不支援 | 不支援 | 10條 |