All-in-one Nagios/Icinga plugin for checking websites including their domains, certificates and more.

After some years of experience with monitoring several hundred websites, I decided to replace the preinstalled check_http plugin with a more sophisticated one and therefore wrote my own check_website plugin.

The biggest task when monitoring websites is to detect problems in an automated way and not to miss one. The check_http plugin does a good job in verifying the HTTP status code but in the past I stumbled over many problems the check_http plugin missed. Some examples:

  • When the website returns HTTP 301 and forwards to another site, this is ok for check_http, even if the provided link to the other site results in 404.
  • The check_http plugin also supports HTTPS but never checks if the certificate is valid or expiring within the next days.

Well, you could cover all those use cases by configuring other checks like check_certificate. When monitoring many websites, this could be tedious and error-prone. This is where check_website comes into play!


Use the following commands to directly install it on your Nagios server:

Or download and install it manually:

Features & Usage

By default all checks (except HTTPS checks) are enabled, so, with the following minimum set of parameters you’ll get the most comprehensive check for your website:

If your website runs HTTPS, simply add --ssl:

Please check out the README from the official repository for detailed information or just use the --help switch.

Download & Installation


© 2015-2016 Benjamin Hubert
Published under GPLv3

Source Code

Check out the source code on Bitbucket

Bugs & Contribution

You found a bug or want to help to improve the plugin? Contact me or open up an issue on Bitbucket!