配置重写策略

创建任何所需的重写操作后,必须至少创建一个重写策略,以选择希望 Citrix ADC 设备重写的请求。

重写策略包括一个规则(该规则本身由一个或多个表达式组成),以及一个在请求或响应与规则匹配时执行的关联操作。用于评估 HTTP 请求和响应的策略规则几乎可以基于请求或响应的任何部分。

即使您不能使用 TCP 重写操作来重写 TCP 负载以外的其他数据,您也可以根据传输层中的信息和传输层下面的图层来制定 TCP 重写策略的策略规则。

如果配置的规则与请求或响应匹配,则会触发相应的策略并执行与其关联的操作。

注意:您可以使用命令行界面或配置实用程序创建和配置重写策略。不完全熟悉命令行界面和 Citrix ADC 策略表达式语言的用户通常会发现使用配置实用程序更容易。

使用命令行界面添加新的重写策略

在命令提示符下,键入以下命令以添加新的重写策略并验证配置:

  • <add rewrite policy <name> <expression> <action> [<undefaction>]
  • <show rewrite policy <name>

示例 1. 重写 HTTP 内容


> add rewrite policy policyNew "HTTP.RES.IS_VALID" insertact NOREWRITE
 Done
> show rewrite policy policyNew
        Name: policyNew
        Rule: HTTP.RES.IS_VALID
        RewriteAction: insertact
        UndefAction: NOREWRITE
        Hits: 0
        Undef Hits: 0

 Done

示例 2. 重写 TCP 负载(TCP 重写)

> add rewrite policy client_tcp_payload_policy CLIENT.IP.SRC.EQ(172.168.12.232) client_tcp_payload_replace_all
 Done
> show rewrite policy client_tcp_payload_policy
        Name: client_tcp_payload_policy
        Rule: CLIENT.IP.SRC.EQ(172.168.12.232)
        RewriteAction: client_tcp_payload_replace_all
        UndefAction: Use Global
        LogAction: Use Global
        Hits: 0
        Undef Hits: 0

 Done
>

使用命令行界面修改现有重写策略

在命令提示符下,键入以下命令以修改现有重写策略并验证配置:

  • <set rewrite policy <name> -rule <expression> -action <action> [<undefaction>]
  • <show rewrite policy <name>

示例


> set rewrite policy policyNew -rule "HTTP.RES.IS_VALID" -action insertaction
 Done

> show rewrite policy policyNew
        Name: policyNew
        Rule: HTTP.RES.IS_VALID
        RewriteAction: insertaction
        UndefAction: NOREWRITE
        Hits: 0
        Undef Hits: 0

 Done

使用命令行界面删除重写策略

在命令提示符下,键入以下命令以删除重写策略:

rm rewrite policy <name>

示例


> rm rewrite policy policyNew
Done

使用配置实用程序配置重写策略

  1. 导航至 AppExpert > 重写 > 策略。
  2. 在详细信息窗格中,执行以下操作之一:
    • 要创建新策略,请单击“添加”。
    • 若要修改现有策略,请选择该策略,然后单击“打开”。
  3. 单击创建或确定。状态栏中将显示一条消息,指出已成功配置策略。
  4. 重复步骤 2 到 4,以创建或修改任意数量的重写操作。
  5. 单击关闭。要删除重写策略,请选择要删除的重写策略,然后单击“删除”,并在出现提示时通过单击“确定”来确认您的选择。