Apache HTTP Server Version 2.4
Description: | Provides better support for systemd integration |
---|---|
Status: | Extension |
Module Identifier: | systemd_module |
Source File: | mod_systemd.c |
Compatibility: | Available in Apache 2.4.42 and later |
This module provides support for systemd integration. It allows
httpd to be used in a service with the systemd
Type=notify
(see systemd.service(5)
for more information). The module is activated if loaded.
[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
Special attention should be given to how ExecStop
and/or KillMode
are configured for the service. If
configured, an ExecStop
command should be a
synchronous operation which itself exits when the daemon
has terminated. Running httpd -k stop
asynchronously initiates daemon termination, so does not
satisfy this condition. The example above uses
KillMode=mixed
so that systemd sends
SIGTERM
to signal the parent process (and only the
parent) to shut down. The entire process group is then sent
SIGKILL
after TimeoutStopSec
elapses, if
any processes are still running. See systemd.kill(5)
for more information.
This module does not provide support for Systemd socket activation.
ExtendedStatus
is
enabled by default if the module is loaded. If ExtendedStatus
is not disabled in
the configuration, run-time load and request statistics are made
available in the systemctl status
output.