Custom error pages by way of iRule
When presenting a load balanced pool of servers to a group of users, uptime and error handlings are always things to be kept in mind. Whether your user group is the internet at large or your internal sales team, no one likes to get a default timeout or a 404 error.
With this simple rule you can enable custom error pages for an entire group of servers at once, without having to configure the webserver at all. This allows for a great amount of flexibility in migration or upgrade situations, as well as limiting the number of changes that need to be tracked on the pools of servers.
The below rule first examines the HTTP_RESPONSE event to find the status of HTTP response. In this case, I’m searching for a 404 status code. If it finds the code(s) in question, it performs the action of your choosing. In this case, we’re just redirecting it to a static html error page hosted on another webserver that has some information to give the customer as to why they’re seeing this error, and perhaps when to expect things back up…that sort of thing.
when HTTP_RESPONSE { if { [HTTP::status] eq "404" } { redirect to "http://10.10.10.1/en_US/error.html" } }
As you can see, the time involved in a simple rule like this can easily be a fraction of the time it would take to configure multiple servers with the same custom error pages. Moreover, you have more control in this situation in the event that the webserver is down and/or not responding.
This is just another way that the BIG-IP can help to build efficiency into your network and continue to help streamline the business processes built around your servers.