Thanks Daniel , I will give it a try. Eddie ----- Original Message ----- From: "Daniel López" <[EMAIL PROTECTED]> To: "Orion-Interest" <[EMAIL PROTECTED]> Sent: Tuesday, November 13, 2001 8:38 AM Subject: Re: Monitoring web apps
> Hi Eddie, > > Here it goes: > > .- Environment -> An apache web server configured with mod_proxy and > SSI, running in port 80. Several orion instances with applications > running in other ports. > .- in httpd.conf -> > ... > <VirtualHost _default_:80> > ProxyVia On > # Proxy configuration for the different applications > > # Application X > ProxyPass /nameX http://hostx.com:portX/nameX > ProxyPassReverse /nameX http://hostx.com:portX/nameX > > # Application Y > ProxyPass /nameY http://hostx.com:portY/nameY > ProxyPassReverse /nameY http://hostx.com:portY/nameY > > # Error configuration for the "Cannot establish connection case" > ErrorDocument 502 /SSIErrorHandler.shtml > </VirtualHost> > ... > .- Then the SSIErrorHandler.shtml looks like -> > <!-- Define application paths --> > <!-- Define the path for application X --> > <!--#set var="appX" value="/^\/nameX/" --> > <!-- Define the path for application Y --> > <!--#set var="appY" value="/^\/nameY/" --> > ... > <!-- > Check which was the redirected path and include the appropriate > error page > --> > <!-- If the original url was from application X --> > <!--#if expr="$REDIRECT_URL=$appX" --> > <!-- Include the "app X is not running, sorry" error page --> > <!--#include file="localApacheDirX/index.html" --> > <!-- If the original url was from application Y --> > <!--#elif expr="$REDIRECT_URL=$appY" --> > <!-- Include the "app Y is not running, sorry" error page --> > <!--#include file="localApacheDirY/index.html" --> > <!-- Error in an application with no specific message defined --> > <!--#else --> > <!-- Include the "this app is not running, sorry" error page --> > <!--#include file="localApacheDirCommon/index.html" --> > <!--#endif --> > > And that's pretty much all. Just some catches: > .- In the Error pages, ALL the links have to be absolute and start with > a different name than the proxied path. Otherwise you get an infinite > loop between the proxied page and the error page. So make sure that > nameX and localApacheDirX are ALWAYS different and that all links in > localApacheDirX/index.html start with /localApacheDirX or http://. > .- If inside the applications you want to get the real remote IP instead > of the proxy one, then you can use, for example, the mod_proxy patch > written by Bjoern Hansen which includes the original IP in an http > header (X-Forwarded-For). We used it because we needed to implement IP > based security restrictions, which are not defined in the JSDK spec. We > also used this IP based security restrictions to prevent acces to the > applications by-passing the proxy, which is very important with SSL > protected applications. > .- It also works with ssl. > .- To improve performance, you can also use the apache proxy as > proxy-cache, to get the static content faster, but then be careful not > to allow it to cache the dynamic pages you don't want to be cached. And > make sure you have enough disk space ;). > .- We haven't specified and ErrorDocument directive for the code 500 > (internal server error) because we wanted to be able to see this kind of > messages, but you can put it later on to show more graceful messages. > .- We use SSI to define the error hanlding page, but you could use a JSP > if you wished. We just did it to have a light weight proxy with no > special add ons. > > I hope it helps, > D. > > > > > Eddie wrote: > > > > Daniel, > > > > The way you do this with Apache sounds very nice. > > I like to know how you configure Apache to redirect to another page when > > something goes wrong. > > Could you submit a little example please ? > > > > Eddie > > > > ----- Original Message ----- > > From: "Daniel López" <[EMAIL PROTECTED]> > > To: "Orion-Interest" <[EMAIL PROTECTED]> > > Sent: Monday, November 12, 2001 2:23 PM > > Subject: Re: Monitoring web apps > > > > > Hi David, > > > > > > We don't have a sophisticated system, but it works well for us. What we > > > do is put an Apache web server, acting as a proxy, in front of the orion > > > server. Then, in the proxy configuration you can specify a redirect page > > > in case something goes wrong, and we use it to redirect to a SSI script > > > that determines which application is down and which page should be shown > > > as an error message. This way you show automatically an error message, > > > just by shutting down orion or by returning a 500 code from your > > > application. > > > I hope it helps, > > > D. > > > > > > > > > David Pérez Villanueva wrote: > > > > > > > > Hi! > > > > > > > > We have several applications running in an Orion web server. Our > > > > server is allocated in a hosting corporation. They have a program that > > > > queries our PCs with an url , calling us if there is the word 'error' > > > > (or similar) in response. > > > > > > > > What is the problem? We need something that will check our applications > > > > and will build a html page (or plain text, or anything) with the check > > > > result. Does anybody know any good software to do this? (We have two > > > > PCs: one with Windows 2000 server and another with Linux). > > > > > > > > Thankyou for your support. > > > > > > > >