scgi_ignore_client_abort
指令 `scgi_ignore_client_abort` 控制 NGINX 在处理 SCGI 请求时是否忽略客户端中止事件。 — NGINX HTTP Core
scgi_ignore_client_abort
httpserverlocation
语法scgi_ignore_client_abort on | off;
默认值off
上下文http, server, location
模块NGINX HTTP Core
参数flag
说明
在 NGINX 配置中,`scgi_ignore_client_abort` 指令用于指定当发往 SCGI 后端的请求在处理过程中客户端连接中断时服务器的行为。将其设置为 'on' 时,NGINX 会继续处理该请求并向后端服务器响应,即使客户端已断开连接。这在后端处理不应受到不再感兴趣的客户端影响的场景中很有用,可改善后端服务器的资源利用率。将其设置为 'off' 时,NGINX 在检测到客户端中止连接后会停止处理该请求,这可以减少资源使用,但可能导致在客户端过早断开连接的请求出现后端处理不完整的情况。 该指令接受单一参数,'on' 或 'off',使用户可以轻松切换该行为。它可放置在 'http'、'server' 或 'location' 上下文中,根据所需配置范围提供灵活性。评估此指令与 NGINX 配置中的其他设置(特别是与请求处理和后端响应管理相关的设置)如何互相作用是很重要的。
配置示例
server {
listen 80;
location /scgi {
scgi_pass backend;
scgi_ignore_client_abort on;
}
}⚠
将此指令设置为 'on' 可能会在大量客户端中断连接时给后端带来不必要的负载。
⚠
确保后端能够在没有客户端反馈的情况下处理请求,因为它可能无法正确处理不完整的请求。