-
-
-
-
在策略中配置高级策略表达式
-
This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
在策略中配置高级策略表达式
您可以在策略中配置最多包含 1,499 个字符的高级策略表达式。高级策略表达式的用户界面在某种程度上取决于要为其配置表达式的功能,以及是为策略配置表达式还是为其他用途配置表达式。
在命令行上配置表达式时,可以使用引号(“.”或“.”)来分隔表达式。在表达式中,可以使用反斜杠 () 来转义额外的引号。例如,以下是在表达式中转义引号的标准方法:
"\"abc\""
‘\"abc\"’
还必须在命令行中使用反斜杠来转义问号和其他反斜杠。例如,表达式 http.req.url.包含(“?”)需要使用反斜杠才能解析问号。请注意,键入问号后,反斜杠字符将不会出现在命令行中。另一方面,如果您转义了一个反斜杠(例如,在表达式 ‘http.req.url.contains (“\\ http”) 中),转义字符会在命令行上回显。
为了使条目更具可读性,可以对整个表达式的引号进行转义。在表达式的开头输入转义序列“q”加上以下特殊字符之一:/{< | ~$^+=&%@# 在策略中配置高级策略表达式 |
您可以在策略中配置最多包含 1,499 个字符的高级策略表达式。高级策略表达式的用户界面在某种程度上取决于要为其配置表达式的功能,以及是为策略配置表达式还是为其他用途配置表达式。
在命令行上配置表达式时,可以使用引号(“.”或“.”)来分隔表达式。在表达式中,可以使用反斜杠 () 来转义额外的引号。例如,以下是在表达式中转义引号的标准方法:
<!JEKYLL@5140@0>
<!JEKYLL@5140@1>
还必须在命令行中使用反斜杠来转义问号和其他反斜杠。例如,表达式 http.req.url.包含(“?”)需要使用反斜杠才能解析问号。请注意,键入问号后,反斜杠字符将不会出现在命令行中。另一方面,如果您转义了一个反斜杠(例如,在表达式 ‘http.req.url.contains (“\\ http”) 中),转义字符会在命令行上回显。
?.
只需在表达式末尾输入特殊字符,如下所示:
q@http.req.url.contains("sometext") && http.req.cookie.exists@
q~http.req.url.contains("sometext") && http.req.cookie.exists~
<!--NeedCopy-->
请注意,使用 {分隔符的表达式以} 关闭。
对于某些功能(例如,集成缓存和响应程序),策略配置对话框提供了用于配置表达式的辅助对话框。此对话框允许您从下拉列表中进行选择,这些下拉列表显示了表达式配置过程中每个点的可用使用这些配置对话框时不能使用算术运算符,但大多数其他高级策略表达式功能都可用。要使用算术运算符,请以自由格式编写表达式。
使用 CLI 配置高级策略语法规则
在命令提示符下,键入以下命令以配置高级策略规则并验证配置:
-
add cache|dns|rewrite|cs policyName **-rule** expression featureSpecificParameters **-action**
-
show cache|dns|rewrite|cs policyName
以下是配置缓存策略的示例:示例:
> add cache policy pol-cache -rule http.req.content_length.le(5) -action INVAL Done > show cache policy pol-cache Name: pol-cache Rule: http.req.content_length.le(5) CacheAction: INVAL Invalidate groups: DEFAULT UndefAction: Use Global Hits: 0 Undef Hits: 0 Done <!--NeedCopy-->
使用 GUI 配置高级策略表达式
-
在导航窗格中,单击要在其中配置策略的功能的名称,例如,可以选择集成缓存、响应程序、DNS、重写或内容切换,然后单击 策略。
-
单击添加。
-
对于大多数要素,请单击表 达式 字段中的。对于内容切换,请单击 配置。
-
单击“前缀”图标(房屋),然后从下拉列表中选择第一个表达式前缀。例如,在响应程序中,选项包括 HTTP、SYS 和 CLIENT。下一组适用选项显示在下拉列表中。
-
双击下一个选项将其选中,然后键入句点 (.)。同样,一组适用的选项会出现在另一个下拉列表中。
-
继续选择选项,直到出现输入字段(用括号表示)。当您看到输入字段时,请在括号中输入适当的值。例如,如果选择 GT (int)(大于,整数格式),则在括号中指定一个整数。文本字符串用引号分隔。下面是示例:
HTTP.REQ.BODY(1000).BETWEEN("this","that")
-
要在复合表达式的两个部分之间插入运算符,请单击运算符图标(sigma),然后选择运算符类型。以下是已配置的表达式的示例,该表达式具有布尔值 OR(由双竖线表示, HTTP.REQ.URL.EQ("www.mycompany.com")||HTTP.REQ.BODY(1000).BETWEEN("this","that")
-
要插入命名表达式,请单击“添加”图标(加号)旁边的向下箭头,然后选择命名表达式。
-
要使用下拉菜单配置表达式以及插入内置表达式,请单击添加图标(加号)。“添加表达 式”对话框的工作方式与主对话框类似,但它提供了用于选择选项的下拉列表,并提供用于数据输入的文本字段而不是括号。此对话框还提供常用表达式下拉列表,用于插入常用表达式。添加完表达式后,单击“确定”。
- 完成后,单击创建。状态栏中的消息将指示已成功配置策略表达式。
使用 GUI 测试高级策略表达式
- 在导航窗格中,单击要为其配置策略的功能的名称(例如,您可以选择集成缓存、响应程序、DNS、重写或内容切换),然后单击策略。
- 选择一个策略,然后单击 打开。
- 要测试表达式,请单击评估图标(复选标记)。
- 在表达式赋值器对话框中,选择与表达式匹配的流类型。
- 在 HTTP 请求数据 或 HTTP 响应数据 字段中,粘贴要使用表达式解析的 HTTP 请求或响应,然后单击 评估。请注意,您必须提供完整的 HTTP 请求或响应,并且标头和正文应以空行分隔。一些捕获 HTTP 标头的程序不会同时捕获响应。如果只复制和粘贴标头,请在标头末尾插入空行以形成完整的 HTTP 请求或响应。
- 单击“关 闭”关闭此对话框。
共享
共享
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.