Limit Conn#
El módulo se utiliza para limitar el número de conexiones por clave definida, en particular, el número de conexiones desde una única dirección IP. Establece la zona de memoria compartida y el número máximo permitido de conexiones para un valor de clave dado. Cuando se excede este límite, el servidor cerrará la conexión. Por ejemplo, las directivas permiten solo una conexión por dirección IP a la vez. Cuando se especifican varias directivas Estas directivas se heredan del nivel de configuración anterior si y solo si no hay directivas Habilita el modo de prueba. En este modo, el número de conexiones no está limitado, sin embargo, en la zona de memoria compartida, el número de conexiones excesivas se contabiliza como de costumbre. Predeterminado stream, server Establece el nivel de registro deseado para los casos en que el servidor limita el número de conexiones. Establece parámetros para una zona de memoria compartida que mantendrá estados para varias claves. En particular, el estado incluye el número actual de conexiones. La clave puede contener texto, variables y sus combinaciones. Las conexiones con un valor de clave vacío no se contabilizan. Ejemplo de uso: Aquí, la dirección IP del cliente se establece mediante la variable El tamaño de Una zona de un megabyte puede mantener alrededor de 32 mil estados de 32 bytes o alrededor de 16 mil estados de 64 bytes. Si el almacenamiento de la zona se agota, el servidor cerrará la conexión. mantiene el resultado de limitar el número de conexiones: Ejemplo de Configuración#
stream {
limit_conn_zone $binary_remote_addr zone=addr:10m;
...
server {
...
limit_conn addr 1;
limit_conn_log_level error;
}
}
Directivas#
limit_conn#
limit_conn_zone $binary_remote_addr zone=addr:10m;
server {
...
limit_conn addr 1;
}
limit_conn
, se aplicará cualquier límite configurado.limit_conn
definidas en el nivel actual.limit_conn_dry_run#
limit_conn_log_level#
limit_conn_log_level
info
| notice
| warn
| error
;limit_conn_log_level error;
limit_conn_zone#
limit_conn_zone $binary_remote_addr zone=addr:10m;
$binary_remote_addr
.$binary_remote_addr
es de 4 bytes para direcciones IPv4 o 16 bytes para direcciones IPv6. El estado almacenado siempre ocupa 32 o 64 bytes en plataformas de 32 bits y 64 bytes en plataformas de 64 bits.Variables Integradas#
$limit_conn_status
#PASSED
,
REJECTED
o REJECTED_DRY_RUN