Forum Discussion
need to rewrite HTTP 200 status code to HTTP 503
Hello,
I am performing website maintenance and need to bring down our website for a few hours. I will be
serving a friendly maintenance page during this time. However, when Google comes by during the
maintenance period this will present a problem for indexing. I am running BigIP version 10.2.3
Google strongly recommends that we return a 503 HTTP result code during the maintenance window:
http://googlewebmastercentral.blogs...anned-site-
downtime.htmlhttp://googlewebmastercentral.blogspot.com/2011/01/how-to-deal-with-planned-site-
downtime.html
There are similiar posts to mine in these forums, but none resolve what I am trying to do. I want to
serve a maintenance page from a pool in VIP and have the F5 rewrite the result code from a 200 to a 503.
I am able to apply the iRule to the VIP, however, it does not serve my maintenance page. This is my
iRule:
when HTTP_REQUEST {
HTTP::respond 503 noserver Retry-After: 10800
}
Thanks,
- Richard__HarlanHistoric F5 AccountIn your iRule you are sending a respond to the request so the LTM will not send the request to the pool. This pop up awhile ago to the iRule and did a small change so it should work in your setup.
- hooleylistCirrostratusHi Jason,
https://devcentral.f5.com/wiki/iRules.event.ashx when HTTP_REQUEST { HTTP::respond 503 noserver Retry-After: 10800 event disable all }
- hooleylistCirrostratusRichard's right and has a good example. I missed that you wanted to just rewrite the pool member's status code.
- jasona_40790NimbostratusThanks much, that worked. I will also need to set the 503 'Retry-After header' with something similiar to this:
- Richard__HarlanHistoric F5 AccountIn the HTTP_REQUEST_SEND you can add the header with the following command
- jasona_40790NimbostratusThanks Richard,
- Richard__HarlanHistoric F5 AccountCan you post the error in /var/log/ltm. Most likely I over looked a syntex error whihc will cause the LTM to reset the connection and not display the page.
- jasona_40790NimbostratusTCL error: iRule-Downtime503 - Illegal argument. Can't execute in the current context. (line 1) invoked from within "HTTP::header exists "Retry-After""
- Richard__HarlanHistoric F5 AccountOk it does not like the HTTP::header exists
- jasona_40790NimbostratusRichard,
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com