if it doesn't work, this one:
HTTP::header exists
when HTTP_REQUEST {
log local0. "[IP::client_addr]:[TCP::client_port]: New HTTP request to [HTTP::host], [HTTP::uri] with Referer [HTTP::header "Referer"]"
if { ([string tolower [HTTP::path]] eq "/abc/private/xyz.do") and (not([HTTP::header exists "Referer"])) } {
log local0. "[IP::client_addr]:[TCP::client_port]: Matched URI with no Referer. Redirecting client."
HTTP::redirect "https://test.com/groupabc/aarp.jsp"
} else {
log local0. "[IP::client_addr]:[TCP::client_port]: Request okay. Using default pool."
}
}
this one is because i'm not sure what is the behavior when requesting a non existing header.