I tried three things...
when HTTP_REQUEST {
if { [http::host] contains "*bla*"}{
HTTP::redirect "https://www.bla.com"
} elseif { [HTTP::uri] contains "*zip*"}{
HTTP::redirect "https://www.zip.com"
} elseif { [HTTP::uri] equals "*stuff*"}{
HTTP::redirect "https://stuff.com"
} else { pool PFA_NodePool_All
}
}
SEcond try
when HTTP_REQUEST {
switch -glob [HTTP::path] {
"vip-bla*" {
HTTP::redirect "https://newbla.com"
}
"bla*" {
HTTP::redirect "https://newbla.com"
}
"zip*" {
HTTP::redirect "https://newzip.com"
}
"zip*" {
HTTP::redirect "https://newzip.com"
}
"stuff*" {
HTTP::redirect "https://newstuff.com"
}
default {HTTP::redirect "https://otherstuff.com"}
}
}
Third try...
when HTTP_REQUEST {
switch -glob [HTTP::uri]{
"if { [HTTP::uri]contains"*bla*"}{
HTTP::redirect "https://bla.com"
}
"elseif { [HTTP::uri]contains"*vip-bla*"}{
HTTP::redirect "https://bla.com"
}
"elseif{ [HTTP::uri]contains"*zip*"}{
HTTP::redirect "https://zip.com"
}
else {HTTP::redirect "https://otherstuff.com"}
}
}
At the end I tried to shorten it to see if I could get anything to work, the last one won't build so there is a syntax error. If you couldn't tell already my IRule building starts with devcentral search and try to fit it to what I am doing.
Thanks
Joe