How can I check the availability of websites from hosted by company? Ping the server and checking if the services for IIS or Apache/Tomcat is not enough. I want to see if the sites are responsive, if I can login. My idea is to build a script using cURL to access the websites and parse for certain words. However using cURL to access a secure site () doesnt seem to work. cURL might not be the best tool! Any ideas how to check the availability of this website?

Thanks in advance, Darrell


I want to see if the sites are responsive, if I can login.

The keyword here is "transaction monitoring" or "real browser monitoring". If you want to run this locally, you can use cUrl (for simple logins), or better automate a real browser (Selenium, iMacros for Firefox/Chrome, WatiN,...) via Python, Perl, etc. The advantage of using a real browser is that it works with SSL and all kinds of Javascript etc.

Consider using a hosted solution. For example, AlertFox has a free plan with transaction monitoring.

  • Thank you, Selenium and iMacros looks promising. I will have a look at the two products. – DeChinees Jan 14 '11 at 11:48

scripting is one option, such as the www::mechanize modules for perl and python. These work with ssl sites.

You could also write a custom nagios module to do the checks. Depends what your current monitoring solution is.


I usually use nagios plugins to check my services health. As Sirex suggested, you can use check_http plugin.

However, using check_http plugin to access a static page might not be enough. Your idea about login is a good one to make sure everything is working as expected.

You can do it by creating a page (PHP/perl/jsp, etc.) that will automatically login using some parameters passed in the requested URL. When this page execution succeeded, you can print some recognizable message. This message can be checked by the check_http plugin. So, you will see a critical state when the output is different.

For the response time, the same plugin can be configured to wait for a specific timeout.


I think cURL is still the best way, but you need to check the cURL options to disregard the certificate check (and check your certificates in another way!!) or make sure cURL has access to the right root certificates.

We use zabbix to monitor website availability and it uses cURL internally. This is monitoring up to the level of 'can I login to the site and get a correct welcome page'.


One of the best ways to do it is by using a service such as http://www.watchmouse.com which I have used - this gives you checking from all over the globe.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.