Nuevas versiones de nginx 1.25.5 y el fork FreeNginx 1.26.0

Se ha lanzado el lanzamiento de la rama principal de nginx 1.25.5, en la cual continúa el desarrollo de nuevas funcionalidades. En la rama estable mantenida paralelamente 1.24.x, solo se realizan cambios relacionados con la corrección de errores graves y vulnerabilidades. A partir de ahora, se formará una rama estable 1.26 basada en la rama principal 1.25.x. El código del proyecto está escrito en C y se distribuye bajo la licencia BSD.

Entre los cambios:

  • Se ha añadido soporte en el módulo stream servidores virtuales, cuya configuración se define en el bloque «server { … }» mediante la directiva server_name. server { server_name ~^(www\.)?(.+)$; proxy_pass www.$2:12345; }
  • Se ha añadido un nuevo módulo ngx_stream_pass_module, diseñado para pasar conexiones recibidas directamente a cualquier socket escuchando asociado con módulos como http, stream y mail. stream { server { listen 12345 ssl; ssl_certificate domain.crt; ssl_certificate_key domain.key; pass 127.0.0.1:8000; } }
  • La directiva listen en el módulo stream ha implementado soporte para los parámetros «deferred» (que incluye accept diferido), «accept_filter» (filtro de conexiones entrantes que se aplica antes de llamar a la función accept) y «setfib» (asignación de la tabla de enrutamiento).
  • Para algunas arquitecturas, se ha implementado soporte para la definición del tamaño del bloque (cache line) utilizado para la transferencia de datos entre la caché de la CPU y la memoria.
  • En sistemas Apple Silicon se ha añadido soporte para el gestor de paquetes Homebrew.
  • Se han solucionado problemas con la compilación cruzada para Windows.
  • Se ha corregido un error que provocaba el cierre de conexiones al usar el modo 0-RTT en el protocolo QUIC.

Adicionalmente, se puede destacar la publicación de la versión estable del proyecto FreeNginx 1.26.0, que desarrolla un fork de Nginx. El desarrollo del fork está a cargo de Maxim Dunin, uno de los desarrolladores clave de Nginx. FreeNginx se posiciona como un proyecto no comercial que asegura el desarrollo de la base de código de Nginx sin intervención corporativa. La versión 1.26.0 ha sido marcada como un lanzamiento estable, que ha incorporado cambios y correcciones de los lanzamientos de la rama principal de Nginx 1.25. Entre otras cosas, FreeNginx 1.26.0 incluye soporte experimental para el protocolo HTTP/3, mejoras para contrarrestar ataques DoS y correcciones relacionadas con el procesamiento asíncrono de entrada/salida.

Simultáneamente, se lanzó njs 0.8.4, un intérprete del lenguaje JavaScript para de un servidor web nginx. El intérprete njs implementa los estándares ECMAScript y permite ampliar las capacidades de nginx para el procesamiento de solicitudes mediante scripts en la configuración. Los scripts pueden utilizarse en el archivo de configuración para definir una lógica de procesamiento de solicitudes más avanzada, generar dinámicamente la respuesta, modificar la solicitud/respuesta o crear rápidamente sustituciones para solucionar problemas en aplicaciones web. En la nueva versión: se ha agregado soporte para el motor JavaScript QuickJS en la CLI; se ha añadido la capacidad de establecer el encabezado Server; se ha implementado una verificación de duplicados de las variables establecidas a través de js_set.

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster