Sonny
Jun 28, 2017Cirrus
Allowing users to access a VS while it's in maintenance mode
I wanted to get the community input as to what's the best way to go about letting users access a VS when you've have attached an irule which puts it in maintenance mode. Basically, the irule directs ALL users to a maintenance page. One of my collegue had an idea to use the below iRule:
when HTTP_REQUEST { switch -glob [string tolower [HTTP::uri]] { "/release*" { pool pool_name } "/" { pool maintenance } default { pool maintenance } } }
The rule looks like it would work only if you had a "release" directory in the app. Hence, I wanted to get folks input.
Hi,
you can try something like that
when HTTP_REQUEST { if {[URI::query [HTTP::uri] bypassMaintenance] equals "true"} { HTTP::respond 302 Location [HTTP::path] "Set-Cookie" "bypassMaintenance=true;path=/" } elseif {[URI::query [HTTP::uri] bypassMaintenance] equals "false"} { HTTP::respond 302 Location [HTTP::path] "Set-Cookie" "bypassMaintenance=false;expires=Thu, 01-Jan-1970 00:00:01 GMT;path=/" } elseif {!([HTTP::cookie value bypassMaintenance] equals "true") } { pool maintenance } }
then in the browser, request
all following requests will bypass maintenance pool. this add a cookie to bypass maintenance mode.http://www.company.com/?bypassMaintenance=true
to reactivate maintenance mode for this session, request
. it will remove the cookie.http://www.company.com/?bypassMaintenance=false