Forum Discussion

wick54's avatar
wick54
Icon for Nimbostratus rankNimbostratus
Sep 28, 2021

irule to add member specific URI path

Hi Guys,

 

We have 2 existing app servers with URL https://abc.xyz.com/abc/crg.aspx and https://def.xyz.com/def/crg.aspx which we try to load balance using F5. App won't work without the specific URL path and I wanted to create an irule which will add relevant member URI path.

 

eg; user 1 access 123.xyz.com ---> LB select member 1 and URI get append as https://123.xyz.com/abc/crg.aspx

user 2 access 123.xyz.com ---> LB select member 2 and URI get append as https://123.xyz.com/def/crg.aspx

 

Would you be able to help with an irule that meets above requirement

  • when LB_SELECTED {

    if { [IP::addr [LB::server addr] equals "10.1.1.1"] } {

    HTTP::uri "/abc/crg.aspx"

    } elseif { [IP::addr [LB::server addr] equals "10.1.1.2"] } {

    HTTP::uri "/def/crg.aspx"

    }

    }

  • xuwen's avatar
    xuwen
    Icon for Cumulonimbus rankCumulonimbus

    when LB_SELECTED {

    if { [IP::addr [LB::server addr] equals "10.1.1.1"] } {

    HTTP::uri "/abc/crg.aspx"

    } elseif { [IP::addr [LB::server addr] equals "10.1.1.2"] } {

    HTTP::uri "/def/crg.aspx"

    }

    }

    • wick54's avatar
      wick54
      Icon for Nimbostratus rankNimbostratus

      Thanks  I have tested this and it is working as expected

    • wick54's avatar
      wick54
      Icon for Nimbostratus rankNimbostratus

       during extended testing we found out that there is an issue with the irule, it looks like some of the subsequent http POST requests not getting the URI appended.

      packet capture (from F5 to backend XML) shows successful attempts have full URI added to the http request but unsuccessful attempt doesn't have URI path added. Any suggestions?

      • why subsequent http post does not send appended URI ? F5 sent append URI on initiation http request ?