Chapter 3

Configuring Advanced Expressions: Getting Started

41

In this expression, the following is the operator component:

eq("text/html")

This operator causes the NetScaler to evaluate any HTTP requests that contain a Content-Type header, and in particular, to determine if the value of this header is equal to the string text/html.

<compound-operator> is a Boolean or arithmetic operator that forms a compound expression from multiple prefix or prefix.operation elements.

For example, consider the following expression:

http.req.header("Content-Type").eq("text/html") && http.req.url.contains(".html")

Prefixes

An expression prefix represents a discrete piece of data. For example, an expression prefix can represent an HTTP URL, an HTTP Cookie header, or a string in the body of an HTTP POST request. An expression prefix can identify and return a wide variety of data types, including the following:

A client IP address in a TCP/IP packet

NetScaler system time

An external callout over HTTP

A TCP or UDP record type

In most cases, an expression prefix begins with one of the following keywords:

CLIENT: Identifies a characteristic of the client that is either sending a request or receiving a response, as in the following examples:

The prefix client.ip.dst designates the destination IP address in the request or response.

The prefix client.ip.src designates the source IP address.

HTTP: Identifies an element in an HTTP request or a response, as in the following examples:

The prefix http.req.body(integer) designates the body of the HTTP request as a multiline text object, up to the character position designated in integer.

The prefix http.req.header("header_name") designates an HTTP header, as specified in header_name.

Page 55
Image 55
Citrix Systems 9.2 manual Prefixes, Chapter