Novas versões do nginx 1.25.5 e fork FreeNginx 1.26.0

Foi lançada a ramificação principal do nginx 1.25.5, dentro da qual continua o desenvolvimento de novos recursos. O branch estável 1.24.x mantido em paralelo contém apenas alterações relacionadas à eliminação de bugs e vulnerabilidades graves. No futuro, com base no branch principal 1.25.x, um branch estável 1.26 será formado. O código do projeto é escrito em C e distribuído sob a licença BSD.

Entre as mudanças:

  • Foi adicionado suporte para servidores virtuais ao módulo stream, cuja configuração é definida no bloco “server {...}” usando a diretiva server_name. servidor { nome_servidor ~^(www\.)?(.+)$; proxy_pass www.$2:12345; }
  • Um novo módulo ngx_stream_pass_module foi adicionado, projetado para encaminhar conexões recebidas diretamente para qualquer soquete de escuta associado a módulos como http, stream e mail. stream {servidor {ouvir 12345 ssl; domínio ssl_certificate.crt; ssl_certificate_key domínio.key; passe 127.0.0.1:8000; } }
  • A diretiva listen do módulo stream implementa suporte para os parâmetros “deferred” (permite aceitação diferida), “accept_filter” (filtro de conexão de entrada aplicado antes de chamar a função de aceitação) e “setfib” (definição da tabela de roteamento).
  • Para algumas arquiteturas, foi implementado suporte para determinar o tamanho do bloco (linha de cache) usado para transferir dados entre o cache da CPU e a memória.
  • Nos sistemas Apple Silicon, foi adicionado suporte para o gerenciador de pacotes Homebrew.
  • Problemas de compilação cruzada para Windows foram resolvidos.
  • Corrigido um bug que fazia com que as conexões fossem fechadas ao usar o modo 0-RTT no protocolo QUIC.

Adicionalmente, podemos notar a publicação de uma versão estável do projeto FreeNginx 1.26.0, que desenvolve um fork do Nginx. O fork está sendo desenvolvido por Maxim Dunin, um dos principais desenvolvedores do Nginx. O FreeNginx está posicionado como um projeto sem fins lucrativos que fornece o desenvolvimento da base de código Nginx sem interferência corporativa. A versão 1.26.0 é marcada como uma versão estável, incorporando alterações e correções dos lançamentos do ramo principal do Nginx 1.25. Entre outras coisas, o FreeNginx 1.26.0 inclui suporte experimental para o protocolo HTTP/3, melhorias para combater ataques DoS e correções relacionadas ao processamento de E/S assíncrono.

Ao mesmo tempo, foi lançado o njs 0.8.4, um interpretador JavaScript para o servidor web nginx. O interpretador njs implementa padrões ECMAScript e permite expandir a capacidade do nginx de processar solicitações usando scripts na configuração. Os scripts podem ser usados ​​em um arquivo de configuração para definir lógica avançada para processar solicitações, gerar uma configuração, gerar dinamicamente uma resposta, modificar uma solicitação/resposta ou criar stubs rapidamente para resolver problemas em aplicações web. Na nova versão: suporte para o mecanismo JavaScript QuickJS foi adicionado à CLI; adicionou a capacidade de definir o cabeçalho do servidor; Implementada uma verificação de duplicação de variáveis ​​definidas via js_set.

Fonte: opennet.ru

Adicionar um comentário