Apache HTTP Server 2.4 版
描述 | 提供对 systemd 集成的更好支持 |
---|---|
状态 | 扩展 |
模块标识符 | systemd_module |
源文件 | mod_systemd.c |
兼容性 | 在 Apache 2.4.42 及更高版本中可用 |
此模块提供对 systemd 集成的支持。它允许 httpd 在使用 systemd 的服务中使用 `Type=notify`(有关更多信息,请参见 systemd.service(5))。如果加载了该模块,则会激活该模块。
[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
应特别注意如何为服务配置 `ExecStop` 和/或 `KillMode`。如果已配置,则 `ExecStop` 命令应为同步操作,该操作本身在守护进程终止时退出。异步运行 `httpd -k stop` 会启动守护进程终止,因此不满足此条件。上面的示例使用 `KillMode=mixed`,以便 systemd 向父进程(且仅向父进程)发送 `SIGTERM` 以发出关闭信号。然后,如果任何进程仍在运行,则在 `TimeoutStopSec` 过期后,整个进程组将收到 `SIGKILL`。有关更多信息,请参见 systemd.kill(5)。
此模块不提供对 Systemd 套接字激活的支持。
ExtendedStatus
在加载模块时默认启用。如果在配置中未禁用 ExtendedStatus
,则运行时负载和请求统计信息将在 `systemctl status` 输出中提供。