Pubblicato il server applicativo NGINX Unit 1.27.0, all'interno del quale si sviluppa una soluzione per garantire l'esecuzione di web-applicazioni in diversi linguaggi di programmazione (Python, PHP, Perl, Ruby, Go, JavaScript/Node.js e Java). Sotto la gestione di NGINX Unit possono essere eseguite simultaneamente più applicazioni in diversi linguaggi di programmazione, i cui parametri di avvio possono essere modificati dinamicamente senza la necessità di modificare i file di configurazione e di riavviare. Il codice è scritto in C e distribuito sotto licenza Apache 2.0. È possibile conoscere le caratteristiche di NGINX Unit attraverso l'annuncio del primo rilascio.
Nella nuova versione:
- Aggiunta la possibilità di utilizzare variabili e valori vuoti nella direttiva 'location', legati alle azioni 'return'.
- Semplificato il reindirizzamento delle richieste HTTP su HTTPS. Aggiunta una nuova variabile $request_uri, contenente l'URI della richiesta, che può essere utilizzata per definire la rotta come parametro della direttiva 'location' all'interno del blocco 'action': { 'listeners': { '*:443': { 'tls': { 'certificate': 'example.com' }, 'pass': 'routes' }, '*:80': { 'pass': 'routes' } }, 'routes': [ { 'match': { 'scheme': 'http' }, 'action': { 'return': 301, 'location': 'https://${host}${request_uri}' } } ] }
- Fornita la possibilità di impostare un nome file diverso da index.html, che verrà restituito quando si accede solo alla cartella (ad esempio, site.com/cms/). 'routes': [ { 'match': { 'uri': '/cms/*' }, 'action': { 'share': '/var/cms$uri', 'index': 'default.html' } }, { 'action': { 'share': '/var/www$uri' } } ]
- Per Ruby Rack implementata l'impostazione della variabile d'ambiente 'SCRIPT_NAME'.
- Garantita la compatibilità con GCC 12.
Fonte: opennet.ru
