Magazine

I migliori web server open source

15/04/2020
I migliori web server open source
PartnerPMIProfessionisti
Un web server è un’applicazione software che, in esecuzione su un computer host, è capace di gestire le richieste di trasferimento di pagine web verso un client, ad esempio un browser. In pratica quando una persona accede a un browser Web e digita un URL, il browser invia una richiesta al server web per ottenere la risorsa collegata a quell’URL. Il server risponde restituendo il contenuto cercato o con un messaggio di errore se non è più reperibile (ad es. Errore 404 - pagina non trovata).
In estrema sintesi il compito di un Web Server è quello di rendere possibile la visualizzazione dei siti sul web.
La comunicazione tra il server web e il client avviene grazie al protocollo di trasferimento HTTP (HyperText Transfer Protocol) che si basa sui protocolli di rete IP e TCP.
La velocità di elaborazione delle richieste dipende dall’hardware, dal carico dell’host e dalla complessità dei contenuti web, ad esempio i contenuti dinamici richiedono più risorse rispetto a quelli statici.

Web server

È stimato che oltre l’80% dei siti web sono gestiti con web server open source.
Ovviamente non tutti i server web hanno le stesse caratteristiche, alcuni sono ideali per soddisfare determinate esigenze, altri sono apprezzati per i loro frequenti aggiornamenti o per la loro stabilità.
Vi sono numerosi programmi gratuiti attraverso i quali poter gestire un server web, tra i più utilizzati troviamo: Apache HTTP server, NGINX, Apache Tomcat, Node.js e Lighttpd.

Apache HTTP server

Il server open source Apache HTTP chiamato semplicemente httpd o Apache, fu rilasciato per la prima volta nel 1995 e ad oggi è probabilmente il server web più utilizzato al mondo.
Apache è impiegato nativamente su sistemi Linux, tuttavia funziona su quasi ogni sistema operativo e può essere installato tranquillamente anche su Windows o MacOs.
Di recente alcuni hanno lamentato che il server Apache HTTP abbia perso in termini di velocità rispetto ad altri software per server web.

NGINX

NGINX è stato sviluppato a partire dal 2002 ed è il secondo web server open source più usato al mondo.
Questo software, per riuscire a gestire tantissime sessioni simultanee, si basa su un’architettura event-driven asincrona.
NGINX offre anche un reverse proxy, che alleggerisce il server web e lo rende più veloce.

Apache Tomcat

Apache Tomcat è un server web open source, sviluppato in linguaggio Java.
Questo tipo di software, rilasciato sotto licenza Apache versione 2, è in genere usato per eseguire applicazioni Java, in ogni caso tramite l’installazione di Coyote può essere impiegato anche come un normale server web.

Node.js

Node.js è un ambiente server-side JavaScript per applicazioni di rete.
Si tratta di una soluzione lato server basata su un modello di I/O asincrono che opera sugli eventi. Si tratta di un modello particolarmente adatto ad essere programmato in JavaScript, in particolare per le applicazioni web. L’asincronicità permette una ottimizzazione dei tempi e delle risorse in quanto il percorso che porta al risultato non incontra blocchi e tempi morti.

Lighttpd

Lighttpd nasce come soluzione per server sottoposti a grandi carichi di lavoro, infatti si distingue per il basso utilizzo di memoria e della CPU, oltre che per la sua velocità. Grazie alle basse richieste hardware è in grado di gestire un grande traffico dati anche su sistemi poco performanti. Inoltre supporta FastCGI, SCGI, Auth, URL rewriting e altre funzioni