Fall-back location for Apache's ProxyPass directive?

I've set up Apache to send requests to camera.example.com to an a webcam accessible via an IP address not associated with the server Apache's running on, using ProxyPass:

[camera] -- [nat / prt frwrd] -- [11.22.33.44]-- [internets] -- [webserver]

Relevant entry in the Apache's virtual host directive for the 'example.com':

<VirtualHost *>
  ServerName camera.example.com
  ProxyRequests Off
  ProxyPass / http://11.22.33.44/
  ProxyPassReverse / http://11.22.33.44/
</VirtualHost>

Works like a charm, however, the camera is not always turned on. In that case, instead of having Apache serve a 'not found' error upon visiting my camera , I'd like it to serve an alternative web page.

Would it be possible to set some sort of 'fall-back' address in case the first one (the camera's) is not available?


Solution 1:

you can use load balancing capability of apache, it has automatic failover built-in as well.

your config would look as follows:

ProxyPass / balancer://hotcluster/
<Proxy balancer://hotcluster>
 BalancerMember http://addres.of.the.camera timeout=15 retry=300
 BalancerMember http://address.of.backup.server status=+H
</Proxy> 

you just mark backup-server with +H - hot standby. as long as camera answers [ in timeout sec ] - traffic is sent to it; if it does not - apache starts sending traffic to the backup machine, and will check camera every retry seconds.