the existing irule is applied to virtual server which is listening on port 4030, isn't it?
if yes, can you try this one?
when HTTP_REQUEST {
switch [string tolower [HTTP::uri]] {
"/" {
HTTP::redirect ""
}
"/ug/atl" {
HTTP::redirect ""
}
"/ug/sea" {
HTTP::redirect ""
}
}
}
this is my testing.
[root@ve1100:Active] config tmsh list ltm virtual bar
ltm virtual bar {
destination 172.28.19.252:4030
ip-protocol tcp
mask 255.255.255.255
pool foo
profiles {
http { }
tcp { }
}
rules {
myrule
}
snat automap
vlans-disabled
}
[root@ve1100:Active] config tmsh list ltm rule myrule
ltm rule myrule {
when HTTP_REQUEST {
switch [string tolower [HTTP::uri]] {
"/" {
HTTP::redirect ""
}
"/ug/atl" {
HTTP::redirect ""
}
"/ug/sea" {
HTTP::redirect ""
}
}
}
}
[root@ve1100:Active] config curl -I http://172.28.19.252:4030
HTTP/1.0 302 Found
Location:
http://172.28.19.252:4030/xyzbnhtyijhgful/ccvvddaa
Server: BigIP
Connection: Keep-Alive
Content-Length: 0
let me know if i still misundertood what you are asking.