Citrix Systems Network Router 9.2 User Manual

Page of 302
44
Citrix NetScaler Policy Configuration and Reference Guide
This prefix extracts URLs in HTTP requests. This expression prefix does not 
require any operators to be used in an expression. However, when you configure 
an expression that processes HTTP request URLs, you can specify operations that 
analyze particular characteristics of the URL. Following are a few possibilities:
Search for a particular host name in the URL. 
Search for a particular path in the URL. 
Evaluate the length of the URL. 
Search for a string in the URL that indicates a time stamp and convert it to 
GMT. 
The following is an example of a prefix that identifies an HTTP header named 
Server and an operation that searches for the string IIS in the header value:
http.res.header("Server").contains("IIS")
Following is an example of a prefix that identifies host names and an operation 
that searches for the string www.mycompany.com as the value of the name:
http.req.hostname.eq("www.mycompany.com")
Basic Operations on Expression Prefixes
The following table describes a few of the basic operations that can be performed 
on expression prefixes:
Basic Operations for Expressions
Operation
Determines whether or not
CONTAINS(<string
>)
The object matches <string>. Following is an example:
http.req.header("Cache-Control").contains("no-
cache")
EXISTS
A particular item is present in an object. Following is an example:
http.res.header("MyHdr").exists
EQ(<text>)
A particular non-numeric value is present in an object. Following 
is an example:
http.req.method.eq(post) 
EQ(<integer>)
A particular numeric value is present in an object. Following is an 
example:
client.ip.dst.eq(10.100.10.100)
LT(<integer>)
An object's value is less than a particular value. Following is an 
example:
http.req.content_length.lt(5000)