Learn F5 Technologies, Get Answers & Share Community Solutions Join DevCentral

Filter by:
  • Solution
  • Technology
Clear all filters
Answers

iRule to redirect traffic between 2 pools based on the URI

I currently have a VIP and pool created for a customer. They are planning to move some services to a new server farm.

They can't create a new URL for this new server farm.

They have requested that i create an irule to redirect traffic between the old server farm (pool1) and the new server farm (pool2) based off of the URI.

For example, if a user types www.abc.com/123, it needs to go to pool1 and if a user types www.abc.com/xyz, it needs to go to pool2. I have created the new pool, but i can't get the irule to work.

This is what i have so far.

when HTTP_REQUEST {
  if { [HTTP::uri] ends_with "123*" } {
     pool pool1
  } elseif { [HTTP::uri] starts_with "/xyz" } {
     pool pool2
 }
}
0
Rate this Question

Answers to this Question

placeholder+image
USER ACCEPTED ANSWER & F5 ACCEPTED ANSWER

Hi Joseph,

Something may be wrong on your first condition.
Why do you need ends_with and a wildcard at the end of the condition ?

This should work as a replacement :

when HTTP_REQUEST {
  if { [HTTP::uri] starts_with "/123" } {
     pool pool1
  } elseif { [HTTP::uri] starts_with "/xyz" } {
     pool pool2
 }
}
0
Comments on this Answer
Comment made 12-Oct-2017 by mrp 59

Can we do it in the same pool but different port number?

0