教學課程:設定您的規則引擎

適用於: ✔️ Front Door (傳統)

Important

Azure Front Door(經典版)將於 2027 年 3 月 31 日退休。 由於該服務即將退休,不再支援設定檔建立、新網域導入或管理憑證。 為避免服務中斷,遷移至Azure Front Door標準版或高級版。 如需詳細資訊,請參閱 ⁠Azure Front Door (傳統版) 淘汰

本教學課程說明如何在 Azure 入口網站和 CLI 中建立規則引擎組態和第一個規則的步驟。

在本教學課程中,您會了解如何:

  • 使用入口網站設定規則引擎。
  • 使用 Azure CLI 設定規則引擎。

Prerequisites

  • 您必須先建立 Azure Front Door (傳統),然後才能完成本教學課程中的步驟。 如需詳細資訊,請參閱建立 Azure Front Door (傳統)

在 Azure portal 配置規則引擎

  1. 在您的 Azure Front Door (傳統版) 資源中,選取左側功能表設定下方的規則引擎組態。 選擇 + 新增,輸入你的設定名稱,開始建立你的第一個規則引擎設定。

  2. 輸入第一個規則的名稱。 然後選取 [+ 新增條件] 或 [+ 新增動作],定義您的規則。

    Note

    • 若要從規則中刪除條件或動作,請使用特定條件或動作右手邊的垃圾桶圖示。
    • 要建立適用於所有進站流量的規則,請不要指定任何條件。
    • 若要在符合第一個比對條件時停止評估規則,請勾選 [停止評估剩餘規則]。 若符合此條件,則配置中剩餘的規則不會被執行。
    • 規則引擎組態中的所有路徑都會區分大小寫。
    • 標頭名稱應遵守 RFC 7230
  3. 透過「 向上移動」、「 向下移動」和 「移動到頂部 」按鈕,決定你設定中規則的優先順序。 優先順序採用遞增順序,表示第一個列出的規則是最重要的規則。

    Tip

    如果你想驗證變更何時會傳播到 Azure Front Door (classic),你可以透過以下範例在規則中建立自訂回應標頭。 您可以新增回應標頭 _X-<RuleName>-Version_,並在每次更新規則時變更值。

    自訂版本標頭規則的螢幕擷取畫面。 更新變更之後,您可以移至 URL 以確認所叫用的規則版本:自訂標頭版本輸出的螢幕擷取畫面。

  4. 當你建立一個或多個規則時,請選擇 儲存。 此動作會建立規則引擎組態。

  5. 建立規則引擎設定後,將該設定與路由規則關聯。 你可以將單一配置套用到多個路由規則,但一個路由規則只能有一個規則引擎配置。 若要與設定產生關聯,請移至 [Azure Front Door (傳統) 設計工具],然後選取 [路由]。 然後選取 [規則引擎組態] 以與路由規則產生關聯。

    路由規則頁面的規則引擎設定關聯螢幕擷取畫面。

在 Azure CLI 中設定規則引擎

  1. 安裝 Azure CLI 並新增「front-door」延伸模組:

    az extension add --name front-door
    

    登入並切換至您的訂用帳戶:

    az account set --subscription <name_or_Id>
    
  2. 使用一個規則建立規則引擎,包括標頭型動作和比對條件:

    az network front-door rules-engine rule create -f {front_door} -g {resource_group} --rules-engine-name {rules_engine} --name {rule1} --priority 1 --action-type RequestHeader --header-action Overwrite --header-name Rewrite --header-value True --match-variable RequestFilenameExtension --operator Contains --match-values jpg png --transforms Lowercase
    
  3. 列出所有規則:

    az network front-door rules-engine rule list -f {front_door} -g {rg} --name {rules_engine}
    
  4. 新增轉送路由覆寫動作:

    az network front-door rules-engine rule action add -f {front_door} -g {rg} --rules-engine-name {rules_engine} --name {rule1} --action-type ForwardRouteOverride --backend-pool {backend_pool_name} --caching Disabled
    
  5. 列出規則中的所有動作:

    az network front-door rules-engine rule action list -f {front_door} -g {rg} -r {rules_engine} --name {rule1}
    
  6. 將規則引擎組態連結至路由規則:

    az network front-door routing-rule update -g {rg} -f {front_door} -n {routing_rule_name} --rules-engine {rules_engine}
    
  7. 取消連結規則引擎:

    az network front-door routing-rule update -g {rg} -f {front_door} -n {routing_rule_name} --remove rulesEngine
    

如需詳細資訊,請參閱 Azure Front Door (傳統) 規則引擎命令的完整清單。

清除資源

若要從 Front Door (傳統) 移除規則引擎設定:

  1. 選擇規則引擎名稱旁的三個點,然後選擇 「關聯路由規則 」以解除規則引擎設定中的任何路由規則:

  2. 取消勾選與此規則引擎設定相關的所有路由規則,然後選擇 儲存

  3. 從 Front Door 刪除規則引擎設定:

    刪除規則引擎組態

後續步驟

在本教學課程中,您已了解如何:

  • 建立規則引擎設定
  • 將配置與路由規則關聯

想學習如何利用規則引擎新增安全標頭,請繼續閱讀下一個教學。