Forum Discussion

mlick2's avatar
mlick2
Icon for Nimbostratus rankNimbostratus
Aug 07, 2007

Multiple iRules on virtual server

I have the following iRules applied to a virtual server. Both iRules work correctly when they are the only rule applied, there are also no problems if the monitor pool in iRule 1 is not up. However, when the monitor pool actually comes up and both iRules are applied, I get the following error message in my logs --

 

 

Aug 2 22:15:43 172.16.61.24 tmm[732]: 01220001:3: TCL error: Rule oracle_header_fixup_8000 - Operation not supported (line 2) invoked from within "HTTP::header replace Host "[HTTP::host]:8000""

 

 

~~~~~~~~~~~~~~~~~~~~~~~~~

 

1.

 

When the Monitor Pool is has >0 active members then

 

use that pool otherwise just fall through

 

 

when HTTP_REQUEST {

 

if {[active_members manual_disable] > 0}

 

{

 

if { not [matchclass [IP::remote_addr] equals $::internal_hosts_networks]}

 

{

 

HTTP::redirect "http://www.mysite.com/down/application_error.html"

 

}

 

}}

 

 

~~~~~~~~~~~~~~~~~~~~~~~~~~

 

2.

 

Fixup Host headers to report the "original" port

 

that they came in on.

 

 

when HTTP_REQUEST {

 

HTTP::header replace Host "[HTTP::host]:8000"

 

}

 

 

Any guidance will be greatly appreciated.

 

 

Thanks in advance,

 

Matt
  • Colin_Walker_12's avatar
    Colin_Walker_12
    Historic F5 Account
    Is there a reason that you don't want to combine these rules? Normally I recommend simplifying things as much as possible by putting like events together into a single rule. It makes the logic much easier to follow and helps prevent errors that stem from on rule processing before the other.

     

     

    Colin