Forum Discussion

matt1985_299432's avatar
matt1985_299432
Icon for Nimbostratus rankNimbostratus
Apr 11, 2017
Solved

IRULE redirection to maintenance pool based on client IP and cookie...

Hi,   I have a requirement to redirect test clients to a maintenance pool based on client IP address and the client manually inserting a cookie. The process will be..   Server maintenance fla...
  • Kevin_Davies_40's avatar
    Apr 12, 2017

    I think this will do what you need...

    when HTTP_REQUEST {
        if {[class match [HTTP::header "True-Client-IP"] equals MAINTENANCE-CLIENTS]} {
             if {[HTTP::cookie exists "MAINTENANCE"]} {
                 switch -glob [string tolower [HTTP::uri]] {
                     "/site1*" -
                     "/site2*" -
                     "/site3*" { pool MAINT-A; persist cookie }
                 }
                  go no further
                 return
             }
        }
        switch -glob [string tolower [HTTP::uri]] {
            "/site1*" { pool POOL-A; persist cookie }
            "/site2*" { pool POOL-B ; persist cookie }
            "/site3*" { pool POOL-C; persist cookie }
        }
    }