Módulos Integrados#

Esta guía describe los módulos integrados de Angie, proporciona ejemplos de configuración, enumera sus directivas y parámetros, así como variables integradas.

Módulo Core#

Core

Gestión de archivos de servicio, procesos y otros módulos de Angie.

Módulos HTTP#

HTTP

Funcionalidad principal para procesar solicitudes y respuestas HTTP, gestionar el servidor HTTP, conexiones y archivos estáticos.

Access

Control de acceso basado en direcciones IP y rangos CIDR.

ACME

Obtención y renovación automática de certificados SSL utilizando el protocolo ACME para servidores HTTP.

Docker

Actualización dinámica de grupos de servidores proxy basada en etiquetas de contenedores Docker.

Addition

Inserción de un fragmento específico antes o después del cuerpo de la respuesta.

API

Interfaz HTTP RESTful para obtener información básica del servidor web y estadísticas en formato JSON, así como para gestionar grupos de servidores proxy.

Auth Basic

Autenticación HTTP básica para control de acceso basada en nombre de usuario y contraseña.

Auth Request

Autorización mediante una subpetición a un servicio HTTP externo.

AutoIndex

Listado automático de directorios sin un archivo índice.

Browser (obsoleto)

Identificación del navegador basada en la cabecera User-Agent.

Charset

Configuración y conversión de la codificación de respuesta.

DAV

Gestión de archivos en el servidor mediante el protocolo WebDAV.

Empty GIF

Servir un GIF transparente de un píxel.

FastCGI

Proxy de peticiones a un servidor FastCGI.

FLV

Pseudo-streaming de archivos Flash Video (FLV).

Geo

Conversión de direcciones IP en valores de variables específicas.

GeoIP

Obtención de datos de direcciones IP basados en geolocalización utilizando bases de datos MaxMind GeoIP.

gRPC

Proxy de peticiones a un servidor gRPC.

GunZIP

Descompresión de respuestas comprimidas con GZip para su modificación y en casos donde el cliente no soporta compresión.

GZip

Compresión de respuestas utilizando el método GZip para ahorrar tráfico.

GZip Static

Servir archivos estáticos precomprimidos utilizando el método GZip.

Headers

Modificación de campos de cabecera de respuesta.

HTTP2

Procesamiento de peticiones utilizando el protocolo HTTP/2.

HTTP3

Procesamiento de peticiones utilizando el protocolo HTTP/3.

Image Filter

Transformación de imágenes.

Index

Configuración de archivos índice que atienden peticiones que terminan con una barra (/).

JS

Manejadores para extender la funcionalidad especificando lógica adicional en njs, un subconjunto del lenguaje JavaScript.

Limit Conn

Limitación del número de peticiones concurrentes (conexiones activas) para protección contra sobrecargas.

Limit Req

Limitación de la frecuencia de peticiones para protección contra sobrecargas y adivinación de contraseñas.

Log

Configuración de registros de peticiones para seguimiento del acceso a recursos con fines de monitorización y análisis.

Map

Conversión de variables basada en pares clave-valor predefinidos.

Memcached

Recuperación de respuestas desde un servidor Memcached.

Mirror

Duplicación de peticiones a otros servidores.

MP4

Pseudo-streaming de archivos MP4.

Perl

Manejadores para extender la funcionalidad especificando lógica adicional en el lenguaje Perl.

Prometheus

Métricas del servidor en formato compatible con Prometheus para monitorización y recopilación de estadísticas.

Proxy

Proxy inverso de peticiones a otros servidores HTTP.

Random Index

Selección aleatoria de un archivo índice para peticiones que terminan con una barra (/).

RealIP

Determinación de la dirección y puerto del cliente cuando se opera detrás de otro servidor proxy.

Referer

Validación de valores de la cabecera Referer.

Rewrite

Modificación del URI de la petición, redirecciones, establecimiento de variables y selección condicional de configuración.

SCGI

Proxy de peticiones a un servidor SCGI.

Secure Link

Creación de enlaces seguros con capacidad para limitar el tiempo de acceso.

Slice

División de peticiones en múltiples subpeticiones para fragmentos individuales para mejorar el almacenamiento en caché de respuestas grandes.

Split Clients

Creación de variables para pruebas A/B, despliegues canary, fragmentación, y otros escenarios que requieren división proporcional de grupos.

SSI

Procesamiento de comandos SSI (Server Side Includes) en respuestas.

SSL

Configuración SSL/TLS para procesar peticiones HTTPS.

Stub Status (obsoleto)

Contadores globales de conexiones y peticiones en formato texto.

Sub

Búsqueda y reemplazo de fragmentos en el cuerpo de la respuesta.

Upstream

Configuración de grupos de servidores proxy para balanceo de carga.

Upstream Probe

Configuración de comprobaciones de salud activas para grupos de servidores proxy.

UserID

Emisión y procesamiento de cookies con identificadores únicos de cliente para seguimiento de sesiones y análisis.

uWSGI

Proxy de solicitudes a un servidor uWSGI.

XSLT

Transformación de documentos XML utilizando el lenguaje XSLT.

Módulos de Stream#

Stream

Funcionalidad básica del servidor de stream para equilibrar protocolos TCP y UDP en el nivel L4.

Access

Control de acceso basado en direcciones IP y rangos CIDR.

ACME

Obtención y renovación automática de certificados SSL utilizando el protocolo ACME para servidores de stream.

Geo

Conversión de direcciones IP en valores de variables específicos.

GeoIP

Obtención de datos de direcciones IP basados en geolocalización utilizando bases de datos MaxMind GeoIP.

JS

Manejadores para extender la funcionalidad especificando lógica adicional en njs, un subconjunto del lenguaje JavaScript.

Limit Conn

Limitación del número de conexiones simultáneas para protección contra sobrecargas.

Log

Configuración de registros de sesión para seguimiento del acceso a recursos con fines de monitorización y análisis.

Map

Conversión de variables basada en pares clave-valor predefinidos.

MQTT Preread

Lectura del identificador de cliente y nombre de usuario de conexiones MQTT antes de tomar decisiones de equilibrio de carga.

Pass

Paso de conexiones aceptadas directamente a un socket de escucha configurado.

Proxy

Configuración de proxy hacia otros servidores.

RDP Preread

Lectura de cookies de conexiones RDP antes de tomar decisiones de equilibrio de carga.

RealIP

Determinación de la dirección y puerto del cliente cuando se opera detrás de otro servidor proxy.

Return

Envío de un valor específico al cliente al conectarse sin realizar más proxying.

Set

Establecimiento de valores de variables específicos.

Split Clients

Creación de variables para pruebas A/B, lanzamientos canary, fragmentación, y otros escenarios que requieren división proporcional de grupos.

SSL

Terminación de protocolos SSL/TLS y DTLS.

SSL Preread

Extracción de información de mensajes ClientHello sin terminación SSL/TLS y antes de tomar decisiones de equilibrio de carga.

Upstream

Configuración de grupos de servidores proxy para equilibrio de carga.

Upstream Probe

Configuración de comprobaciones de salud activas para grupos de servidores proxy.

Módulos de Correo#

Mail

Funcionalidad básica del servidor proxy de correo.

Auth HTTP

Autenticación de usuarios y selección de servidores para proxying posterior mediante peticiones HTTP a un servidor externo.

IMAP

Soporte para el protocolo IMAP.

POP3

Soporte para el protocolo POP3.

Proxy

Configuración de proxy hacia otros servidores.

RealIP

Determinación de la dirección y puerto del cliente cuando se opera detrás de otro servidor proxy.

SMTP

Soporte para el protocolo SMTP.

SSL

Soporte para protocolos SSL/TLS y StartTLS.

Módulo Google PerfTools#

Google PerfTools

Responsable de la integración con la biblioteca Google Performance Tools para perfilado de aplicaciones y análisis de rendimiento.

Módulos WASM#

WASM

Funcionalidad básica de WASM que permite la ejecución de código WASM en Angie.

WAMR

Integración con WebAssembly Micro Runtime.

Wasmtime

Integración con el entorno de ejecución Wasmtime.