
MÓDULOS MÁS COMUNES DE APACHE
Hace poco hablé sobre los módulos de apache. Ahora os pongo un listado de los módulos más comunes de apache:
Módulos de manejo de contenido
Estos módulos procesan las solicitudes HTTP y determinan cómo Apache maneja los recursos solicitados.- mod_dir: Sirve directorios. Cuando una URL apunta a un directorio, este módulo busca automáticamente un archivo por defecto (por ejemplo, index.html o index.php).
- mod_alias: Permite redirigir URLs o mapear rutas a ubicaciones específicas del sistema de archivos.
- mod_rewrite: Potente motor para reescritura de URLs, útil para crear URLs más amigables o implementar redirecciones complejas.
- mod_userdir: Permite a los usuarios acceder a directorios personales a través de URLs (~usuario).
Módulos de autenticación y autorización
Estos módulos controlan el acceso a los recursos y verifican la identidad de los usuarios.- mod_auth_basic: Implementa autenticación HTTP básica mediante usuarios y contraseñas.
- mod_auth_digest: Proporciona autenticación más segura utilizando un esquema de resumen (digest) en lugar de texto plano.
- mod_authz_core: Define reglas de autorización, como permitir o denegar acceso según ciertos criterios.
- mod_authz_user: Autorización basada en usuarios específicos.
- mod_authz_groupfile: Permite gestionar autorizaciones basadas en grupos definidos en un archivo.
- mod_auth_form: Permite la autenticación mediante formularios HTML.
- mod_authn_anon: Permite la autenticación anónima.
- mod_authn_dbd: Utiliza bases de datos SQL para autenticar usuarios.
- mod_authn_dbm: Emplea bases de datos DBM para la autenticación.
- mod_authn_file: Autentica usuarios mediante archivos de texto plano.
- mod_authn_socache: Almacena en caché las credenciales de autenticación para mejorar el rendimiento.
- mod_authnz_fcgi: Permite la autenticación y autorización a través de aplicaciones FastCGI.
- mod_authnz_ldap: Integra la autenticación y autorización con directorios LDAP.
- mod_authz_dbd: Autoriza usuarios basándose en información almacenada en bases de datos SQL.
- mod_authz_dbm: Utiliza bases de datos DBM para la autorización.
- mod_authz_host: Controla el acceso según el nombre de host o la dirección IP del cliente.
- mod_authz_owner: Autoriza el acceso basándose en la propiedad de los archivos.
Módulos de caché
Mejoran el rendimiento al almacenar en caché contenido dinámico o estático.- mod_cache: Módulo principal que gestiona la caché.
- mod_cache_disk: Almacena contenido en disco como caché.
- mod_cache_socache: Utiliza almacenamiento en memoria para mejorar la velocidad de acceso.
Módulos de compresión y optimización
Ayudan a reducir el tamaño de las respuestas HTTP y optimizan la entrega del contenido.- mod_deflate: Comprime el contenido usando gzip, reduciendo el tamaño de las respuestas HTTP.
- mod_expires: Permite configurar encabezados de expiración, indicando a los navegadores cuánto tiempo deben almacenar en caché un recurso.
- mod_headers: Permite modificar o agregar encabezados HTTP en las respuestas.
- mod_filter: Define reglas para aplicar filtros como compresión o transformación de contenido.
- mod_brotli: Comprime el contenido utilizando el algoritmo Brotli antes de enviarlo al cliente.
Módulos de seguridad
Garantizan un entorno seguro para los usuarios y el servidor.- mod_ssl: Habilita conexiones HTTPS mediante el protocolo SSL/TLS.
- mod_security: Un firewall de aplicaciones web (WAF) que protege contra amenazas comunes como inyecciones SQL o cross-site scripting (XSS).
- mod_evasive: Protege contra ataques de denegación de servicio (DoS) al limitar la cantidad de solicitudes por IP.
- mod_remoteip: Sustituye la IP del cliente po r la original en caso de que el servidor esté detrás de un proxy o balanceador de carga.
Módulos de soporte para lenguajes y bases de datos
Facilitan la integración con diferentes tecnologías.- mod_php: Permite la ejecución de scripts PHP directamente desde el servidor web.
- mod_perl: Integra el lenguaje Perl, optimizando su rendimiento en aplicaciones web.
- mod_python: Proporciona soporte para aplicaciones web escritas en Python.
- mod_dbd: Maneja conexiones a bases de datos relacionales mediante una interfaz abstracta.
Módulos de registro y monitorización
Proporcionan herramientas para analizar el comportamiento del servidor y las solicitudes.- mod_log_config: Configura cómo se registran las solicitudes HTTP en los archivos de log.
- mod_status: Ofrece un informe en tiempo real sobre el estado y el rendimiento del servidor.
- mod_watchdog: Supervisa tareas periódicas y eventos críticos.
- mod_dumpio: Ayuda a depurar problemas registrando la entrada y salida de datos.
Módulos proxy
Facilitan la configuración de servidores proxy y balanceo de carga.- mod_proxy: Actúa como proxy directo o inverso, reenviando solicitudes a otros servidores.
- mod_proxy_http: Maneja tráfico proxy para el protocolo HTTP.
- mod_proxy_balancer: Implementa balanceo de carga entre múltiples servidores backend.
- mod_proxy_ftp: Soporta proxy para tráfico FTP.
- mod_proxy_ajp: Permite conexiones proxy utilizando el protocolo AJP (Apache JServ Protocol).
- mod_proxy_fcgi: Soporta proxy para aplicaciones FastCGI.
- mod_proxy_ftp: Habilita el uso de proxy para servidores FTP.
- mod_proxy_connect: Permite tunelización de conexiones (por ejemplo, conexiones HTTPS a través de un proxy).
- mod_proxy_wstunnel: Permite la comunicación con servidores WebSocket a través del proxy.
- mod_proxy_scgi: Soporta el protocolo SCGI para aplicaciones web backend.
- mod_proxy_hcheck: Permite la verificación del estado de los servidores backend en un balanceador de carga.
- mod_lbmethod_byrequests: Método de balanceo de carga basado en la cantidad de solicitudes.
- mod_lbmethod_bytraffic: Método de balanceo basado en la cantidad de tráfico transferido.
- mod_lbmethod_bybusyness: Método de balanceo basado en la carga de los servidores backend.
- mod_lbmethod_heartbeat: Método de balanceo que usa latidos (heartbeat) para seleccionar el backend.
Módulos experimentales o avanzados
Son menos comunes, pero ofrecen funcionalidades únicas para casos específicos.- mod_http2: Habilita HTTP/2, mejorando la eficiencia y velocidad de las conexiones.
- mod_lua: Permite escribir scripts en Lua para personalizar el comportamiento del servidor.
- mod_sed: Permite realizar transformaciones en el contenido de las respuestas utilizando expresiones regulares.
Otros módulos
- mod_dav: Ofrece funcionalidades de WebDAV para la gestión de documentos en la web.
- mod_info: Proporciona información detallada sobre la configuración del servidor.
- mod_autoindex: Genera listados automáticos de directorios.
- mod_asis: Envía archivos al cliente tal como están, sin añadir cabeceras HTTP.
- mod_actions: Permite la ejecución de scripts CGI dependiendo de los tipos de medios y métodos de solicitud. Requiere AddHandler.
- mod_env: Permite cambiar las variables de entorno transmitidas a scripts CGI y SSI.
- mod_setenvif: Permite adaptar las variables del entorno en función de las características de la consulta.
- mod_include: Permite el análisis por el servidor de archivos HTML.
- mod_mime: Permite comportamientos distintos del servidor web basados en las terminaciones de los archivos.
- mod_negotiation: Selección de contenidos.
- mod_speling: Con el módulo activado, el servidor intenta resolver correctamente URL mal escritas (p. ej., mayúsculas y minúsculas).