|

Apache Server-Status

But de l’article

Cet article va présenter comment afficher l’état de santé d’un serveur apache

Nous verrons :

  • Comment l’installer
  • Comment le configurer
  • Ajouter des fonctionnalités pour rendre la page plus friendly 

Nous allons travailler sur un serveur ALMA9.

Peu importe la distribution, le fonctionnement est le même, c’est un moteur Apache.

Seul l’emplacement des fichiers de configuration peut changer.

Installation

C’est le chapitre le plus simple de mes articles 😀

La fonctionnalité fait parti intégrante du moteur d’apache, il n’y a donc rien a faire, seulement activer la fonctionnalité.

Configuration

Configuration du serveur WEB

Nous allons créer le fichier Server-Status pour la page WEB.

cat >> /etc/httpd/conf.d/server-status.conf <<EOF
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from all
</Location>
EOF

Activation du module

Nous allons demander à apache d’activer le module

echo ‘LoadModule status_module modules/mod_status.so’>>/etc/httpd/conf.d/server-status.conf

Activation du status étendu

Par défaut l’option est sur ON. Si ce n’est pas le cas il faut décommenter la ligne

grep -Rni ExtendedStatus  *
conf/httpd.conf:354:ExtendedStatus On

Application de la configuration

2 méthodes sont disponibles :

  • Via apachectl
apachectl configtest
Syntax OK
  • Via httpd
httpd -t
Syntax OK

Sans surprise les 2 commandes renvoient le même résultat 😀

Prise en compte :

  • On peut redémarrer le service
systemctl restart httpd
  • On contrôle le service
systemctl status httpd
● httpd.service - The Apache HTTP Server
     Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; preset: disabled)
    Drop-In: /etc/systemd/system/httpd.service.d
             └─php-fpm.conf
     Active: active (running) since Fri 2026-07-31 09:31:26 CEST; 9s ago
       Docs: man:httpd.service(8)
   Main PID: 532047 (httpd)
     Status: "Total requests: 0; Idle/Busy workers 100/0;Requests/sec: 0; Bytes served/sec:   0 B/sec"
      Tasks: 177 (limit: 22986)
     Memory: 14.7M (peak: 14.9M)
        CPU: 36ms
     CGroup: /system.slice/httpd.service
             ├─532047 /usr/sbin/httpd -DFOREGROUND
             ├─532048 /usr/sbin/httpd -DFOREGROUND
             ├─532049 /usr/sbin/httpd -DFOREGROUND
             ├─532050 /usr/sbin/httpd -DFOREGROUND
             └─532051 /usr/sbin/httpd -DFOREGROUND

Contrôle du serveur WEB

On vérifie l’interface WEB via l’url https://<mon site>/ server-status

Notre serveur WEB est opérationnel.

Supervision avec centreon

Centreon fourni un plugin pour superviser le status des serveurs WEB apache

Installation

Le plugin

dnf install -y centreon-plugin-Applications-Webservers-Apache-Serverstatus.noarch

Le template

dnf install -y centreon-pack-applications-webservers-apache-serverstatus

Personnalisation des templates

J’ai expliqué dans un article précédent comment regrouper les indicateurs par famille.

Les templates de services seront donc :

On peut créer le template d’hôte TH_App-Webserver-Apache-ServerStatus associé :

  • Dans l’onglet général
    • Name Nom du template
    • On rattache le template générique
    • On renseigne les macros avec les valeurs par défaut
  • Dans l’onglet relation on rattache nos templates de service
  • On Sauvegarde

Supervision du serveur WEB

On créé notre serveur à superviser et on rajoute le template que nous venons de créer

On exporte la configuration et on contrôle