内置缓存重定向策略

NetScaler 设备提供内置的缓存重定向策略,用于处理典型的缓存请求。这些策略基于 HTTP 方法、传入请求的 URL 或 URL 令牌、HTTP 版本或 HTTP 标头及其在请求中的值。

内置的缓存重定向策略可以直接绑定到虚拟服务器,无需进一步配置。

内置高级策略缓存重定向策略

基于高级策略表达式的内置缓存重定向策略称为 高级策略缓存重定向策略。有关高级策略表达式以及如何配置它们的完整说明,请参阅 策略和表达式

除了传统缓存重定向策略完成的相同类型的评估之外,高级策略缓存重定向策略还允许您分析更多数据(例如,HTTP 请求的正文)并在策略规则中配置更多操作(例如,将请求定向到缓存或源服务器)。

NetScaler 设备为高级策略缓存重定向策略提供以下两个内置操作:

  • 缓存
  • ORIGIN

正如它们的名字所暗示的那样,它们分别将请求定向到缓存服务器或源服务器。

注意: 如果使用内置的高级策略缓存重定向策略,则无法修改操作。

NetScaler 设备提供以下内置的高级策略缓存重定向策略:

内置策略名称 说明
绕过非 get_adv 如果请求使用 GET 以外的 HTTP 方法,则绕过缓存。
绕过缓存控制 _adv 如果请求标头包含 Cache-Control: no-cache 或 Cache-Control: 无存储标头,或者 HTTP 请求包含编译指示标头,则绕过缓存。
绕过动态 url_adv 如果 URL 暗示内容是动态的,则绕过缓存,如存在以下任何扩展名所示:cgi、asp、exe、cfm、ex、shtml 或 htx。如果 URL 以以下任何一项开头,也可以绕过缓存:/cgi-bin/、/bin/ 或 /exec/。
绕过 urltokens_adv 绕过缓存,因为请求是动态的,如 URL 中的以下标记之一所示:?,!,或 =。
绕过Cookie _adv 绕过任何具有 Cookie 标头和扩展名而不是 .gif 或 .jpg 的 URL 的缓存。

显示内置的缓存重定向策略

您可以使用命令行界面或配置实用程序显示可用的缓存重定向策略。

使用 CLI 显示内置的缓存重定向策略

在命令提示符下,键入:

show cr policy [<policyName>]

示例:

> show cr policy
1)
    Policy: bypass-non-get-adv    Rule: HTTP.REQ.METHOD.EQ(GET).NOT    Action: ORIGIN
    Hits: 0
2)
    Policy: bypass-cache-control-adv    Rule: ((HTTP.REQ.CACHE_C0NTR0L.IS_N0_ST0RE) || (HTTP.REQ.CACHE_C0NTR0L.IS_NO_CACHE) || (HTTP.REQ.HEADER("Pragma").C0NTAINS("no-cache")))
ction : ORIGIN
    Hits: 0
3)
    Policy: bypass-dynamic-url-adv    Rule: (HTTP.REQ.URL.ENDSWITH_ANY("ns_cr_dynamic_ext") || (HTTP.REQ.URL.PATH.STARTSWITH_ANY("ns_cr_dynamic_path")))    Action: ORIGIN
    Hits: 0
4)
    Policy: bypass-urltokens-adv Rule: HTTP.REQ.URL.REGEX_MATCH(re/[?!=]/)    Action: ORIGIN
    Hits: 0
5)
    Policy: bypass-cookie-adv    Rule: ((HTTP.REQ.HEADER("Cookie").EXISTS) && (!(HTTP.REQ.URL.ENDSWITH(".gif"))) && (!(HTTP.REQ.URL.ENDSWITH(".jpeg"))))    Action: ORIGIN
    Hits: 0
Done
<!--NeedCopy-->

使用 GUI 显示内置的缓存重定向策略

  1. 导航到 流量管理 > 缓存重定向 > 策略。配置的缓存重定向策略将显示在详细信息窗格中。
  2. 选择其中一个已配置的策略以查看详细信息。
内置缓存重定向策略