redirect to a static page on another web server when main web server is down

Solution 1:

I think the answer is in your question: Get a Load Balancer/Reverse-Proxy! (-:

Two that come to mind are:

  • Varnish
  • Pound

Varnish can be installed on the same server as IIS, set to listen to port 80. Then define the web server to listen on another port, say, 8080, and set up a backend in Varnish to point localhost on port 8080. Next, do a health check against the backend -- Varnish has functions for it. If it fails, display a message or redirect to another server.

Varnish is usually used for caching, but you can turn that off. OR. You can store pages in varnish cache even if your backend is down and present them to your users which you fix the backend. Look at Varnish's grace and saint modes. Check out the docs at the above links. If you are not familiar with these products, there is a bit of a learning curve, IMO.

HTH, and good luck!