Forum Discussion

Avnish76_102516's avatar
Avnish76_102516
Icon for Nimbostratus rankNimbostratus
Feb 13, 2012

I rule not redirecting correctly although the I rule looks ok

Hello People this is my first post on here so please bare with me if with my scenario sounds complicated.

 

I have a client who has a bunch of VIP for a Dr Environment

 

Each of the VIPS has 2 I-rules configured. for the ease of explanation I will refer to them as I rule [A] and I rule [B]

 

 

I rule [A] is written as follows

 

 

 

when HTTP_REQUEST {

 

if { [matchclass [string tolower [HTTP::header User-Agent]] contains $::Dozzer] } {

 

pool X

 

} else {

 

pool Y

 

}

 

}

 

 

I rule [B] is written as follows

 

 

when HTTP_REQUEST {

 

if {[string tolower [HTTP::uri]] contains "/pages/checkout/thirdmanresponsepage.jsf"}{

 

pool X

 

}

 

else {

 

pool Y

 

}

 

}

 

 

 

 

 

I Rule A is simple enough with its request when a a request comes in and contains the following string it will direct to Pool X if doesn't contain the string it will direct to pool Y

 

 

I Rule [B] is also simple enough when a request comes in if it contains the following string it will direct to pool X if it doesn't it will direct to pool Y.

 

 

 

In both I rules. Pool Y contains the same pool members which in both cases is the default pool. all requests are going to the default pool.

 

 

The client has asked us why all requests are going to the default pool and not reading the requests in the URI to direct to the correct pool member.

 

 

I even added logging to the Irule to see where the redirects are going and all of them go to the default pool. I have tried various ways of correcting this to no avail.

 

 

I think the problem must be with the first I rule. when the requests are coming in and it contains the string it will direct to the Dozzer datalist group or else it will send to the default pool. When other request comes in and hits the 2nd I rule it contains the string specified it will direct to the first pool [X] but instead it directs to the default pool of [Y].

 

Im struggling to understand why this is happening my only hunch is there is a conflict of the I-rules.

 

 

Please help, im happy to answer all your questions or explain things a bit more clearer.

 

 

 

 

 

 

 

 

2 Replies

  • if uri contains /pages/checkout/thirdmanresponsepage.jsf but user-agent is not in Dozzer data group, what pool do you want to send request to??
  • In answer to your question we want the requests to come in and go the desired pool.in both cases Pool X however for some reason they are going to the default pool Pool [Y] the fact is all requests are going to Pool [Y] and totally disregarding pool [X]

     

    Hope this makes sense