daemon

daemon 指令控制 NGINX 是以后台(daemon 模式)还是以前台运行。 — NGINX Core

daemon
main
语法daemon on | off;
默认值on
上下文main
模块NGINX Core
参数flag

说明

`daemon` 指令负责设置 NGINX 服务器的运行模式,具体来说是设置其是否作为后台进程运行(daemon 模式)或保持在前台运行。该指令可设置为 'on' 或 'off',其中 'on' 启用 daemon 模式,允许 NGINX 从终端分离,使其作为独立的后台服务运行。相反,将其设置为 'off' 会使 NGINX 保持在前台运行,这在调试或需要在终端窗口中密切监视服务器输出时很有用。 `daemon` 设置为 'on' 时,NGINX 会启动其进程并进行 fork,创建一个子进程来处理请求,允许父进程退出而子进程继续运行。这有助于更有效地管理资源,并确保 NGINX 在没有控制终端的情况下继续运行。但是,在开发环境或故障排查时,你可能希望将该指令设置为 'off',以便在终端中直接查看 NGINX 的日志和调试输出。 值得注意的是,该指令通常放在 NGINX 的主配置上下文中,并在 worker 进程启动之前处理,这意味着应当适当定义它以实现所需的服务器运行行为。

配置示例

daemon off;

在调试时忘记将此指令设置为 'off' 可能导致错误信息被掩盖,难以排查。

在某些环境中,以前台方式运行 NGINX (使用 'daemon off') 可能会导致其无法正确接收信号。