mod_systemd Fournit un support amélioré pour l'intégration de systemd Extension mod_systemd.c systemd_module Disponible à partir de la version 2.4.42 du serveur HTTP Apache

Ce module implémente le support de l'intégration de systemd. Il permet d'utiliser httpd en temps que service avec le paramètre de systemd Type=notify (voir la page de manuel systemd.service(5) pour plus de détails). Le module est activé s'il est chargé.

Exemple basique d'unité de service systemd (à étoffer pour un système en production)
[Unit]
Description=The Apache HTTP Server
After=network.target

[Service]
Type=notify
ExecStart=/usr/local/apache2/bin/httpd -D FOREGROUND -k start
ExecReload=/usr/local/apache2/bin/httpd -k graceful
KillMode=mixed

[Install]
WantedBy=multi-user.target
    

Si vous utilisez ExecStop et/ou KillMode, vous devez prêter une attention particulière à leur configuration pour ce service. Si elle est présente, une commande ExecStop doit être une operation synchrone qui se termine elle-même en même temps que le démon. Cette condition n'est pas satisfaite si vous exécutez la commande httpd -k stop de manière asynchrone, car elle initie l'arrêt du démon. L'exemple ci-dessus utilise KillMode=mixed afin que systemd envoie SIGTERM au processus parent (et seulement à ce dernier) pour lui indiquer qu'il doit s'arrêter. Les processus encore en cours d'exécution après un temps égal à TimeoutStopSec recevront alors le signal SIGKILL. Voir systemd.kill(5) pour plus d'informations.

Ce module ne fournit pas le support de l'activation du socket Systemd.

ExtendedStatus est activé par défaut si le module est chargé. Si ExtendedStatus n'est pas explicitement désactivé dans le fichier de configuration, les statistiques à propos de la charge et des requêtes pendant l'exécution apparaîtront dans la sortie de la commande systemctl status.