WebServers: cosa sono e quali sono le differenze?

Chi si appresta a mettere online un sito web, un e-commerce oppure un blog, deve innanzitutto scegliere un servizio di hosting, ossia un servizio che metta a sua disposizione uno spazio virtuale gestito da un provider; tale spazio ospiterà tutti i file che consentiranno agli utenti di visitare le pagine ed eventualmente compiere determinate azioni, come gli acquisti, l’invio di richieste di informazioni, l’iscrizione a una newsletter e tanto altro.

I servizi di hosting sono ospitati su dei server, dei computer molto potenti, denominati anche “host”, sui quali girano particolari software, i Server Web, che permettono la comunicazione tra il server e il client. Oltre ai WebServers, possono essere presenti altri programmi volti ad implementare funzioni aggiuntive.

Che cos’è il WebServers

Quando si parla di WebServer si fa dunque riferimento ai software che girano sui computer che fungono da server e che rispondono alle richieste dei client inviando al computer dell’utente i file richiesti. Questo processo consente la visualizzazione del sito nel browser e la navigazione tra le varie pagine.

A seconda delle funzioni che dovranno svolgere, i WebServer possono utilizzare diversi protocolli:

  • HTTP e HTTPS per la visualizzazione dei siti web
  • FTP per il trasferimento e l’archiviazione dei file
  • SMTP per la gestione della posta elettronica.

In questo articolo verranno presi in considerazione esclusivamente i primi, ossia quelli che utilizzano i protocolli Hypertext Transfer Protocol e Hypertext Transfer Protocol Secure.

Come funziona il software per server web

Quando un utente naviga in internet e desidera accedere a un particolare sito web, inserisce l’indirizzo, ossia l’URL, nella barra in alto del browser e preme invio. Fatto questo si aspetta che il sito compaia in modo più o meno rapido, senza domandarsi, il più delle volte, come avvenga il passaggio di informazioni. Ecco, in breve, che cosa succede:

  • l’indirizzo inserito viene codificato tramite DNS e restituito al browser sotto forma di IP, ossia di codice alfanumerico univoco
  • il computer, sfruttando la connessione internet e basandosi sull’IP identificativo, contatta il server e, usando il protocollo HTTP o HTTPS, gli invia alcuni dati, come l’IP del mittente e il tipo di browser utilizzato
  • il web server elabora i dati e invia a sua volta quelli richiesti, sempre usando il protocollo suddetto e in forma codificata.

Nel caso in cui il web server non fosse in grado di trovare le pagine richieste, invierebbe un codice di errore.

I principali WebServer software

Ad oggi esistono molti WebServer, ma quelli più utilizzati e diffusi sono cinque:

  • Apache HTTP Server
  • LiteSpeed Web Server
  • IIS
  • Lighttpd
  • Nginx.

Ognuno di questi presenta caratteristiche e peculiarità che lo rendono perfetto in certi contesti e per certi utilizzi, e meno adatto per certi altri. Prima di acquistare un servizio di hosting è necessario valutare i tipi di WebServer offerti dal provider, al fine di assicurarsi che sia presente quello più adatto alle esigenze dello spazio virtuale che si desidera mettere online.

Tra gli aspetti da valutare vi sono ad esempio la disponibilità di moduli che permettano di aumentare le funzioni di base del web server e la capacità di gestire picchi di connessioni.

Di seguito analizzeremo i 5 web server più diffusi e cercheremo di capire in cosa si differenziano e come scegliere il più adatto.

apache webserver

Apache HTTP Server

Apache HTTP Server, noto anche semplicemente come Apache, è il più vecchio dei cinque; nato nel 1995 per opera dell’Apache Group, è diventato in breve tempo il web server più popolare e utilizzato. La sua grande fama è dipesa in gran parte dal fatto che si tratta di un software gratuito e open suorce.

Molto flessibile, può essere installato sui sistemi operativi Microsoft, Linux ed anche MacOS, e può essere implementato con funzioni aggiuntive grazie ai numerosi moduli disponibili i quali permettono, tra le altre cose, di utilizzarlo come Reverse Proxy. Tra questi troviamo anche un modulo che permette di abilitare Apache per la gestione dei siti dinamici, senza bisogno di ricorrere ad altri software di supporto.

Ricco di caratteristiche positive, questo web server, molto utilizzato anche in locale dagli sviluppatori per effettuare test sui siti web prima di metterli online, ha però un difetto: a causa della sua architettura di tipo process-based e nonostante moduli appositi, non riesce a sostenere in modo ottimale picchi di connessioni.

IIS webserverInternet Information Services

Internet Information Services, comunemente noto come IIS, è il server Web di casa Microsoft, progettato per girare esclusivamente sui sistemi operativi Windows.

Permette una buona gestione di siti web statici e può essere configurato anche come server FTP.

Lighttpd webserverLighttpd

Rilasciato nel 2003, è anch’esso, come Apache, un WebServer gratuito e open source; la sua velocità di elaborazione è data dalla leggerezza dell’applicazione, la quale lo rende la scelta ideale per lavorare in ambienti con poca RAM, per utilizzare servizi che fanno elevato uso di CPU e per creare server domestici.

Flessibile e implementabile grazie all’utilizzo di moduli, Lighttpd viene utilizzato in abbinamento ad altri WebServer più potenti proprio al fine di sfruttare la sua leggerezza. Questo è quanto fanno ad esempio siti come Wikipedia e Youtube, i quali lo utilizzano in abbinamento ad Apache HTTP Server per velocizzare alcuni tipi di servizi.

nginx webserverNginx

Sviluppato nel 2004 per rispondere alle nuove esigenze del web, ossia per sostenere siti sempre più pesanti e rispondere alle crescenti richieste di connessioni multiple senza rallentamenti o interruzioni del servizio, NGINX si presenta come un web server rapido ed estremamente efficace, molto utile per chi prevede picchi di visite sul proprio sito.

Proprio come Apache, anche Nginx può essere arricchito con svariate funzionalità che permettono di utilizzarlo anche come reverse proxy o mail proxy. Non presenta invece un modulo per la gestione diretta dei siti dinamici, ma può comunicare in modo diretto e immediato con software appositi.

litespeed webserverLiteSpeed Web Server

Sviluppato nel 2003 dalla LiteSpeed Technologies è entrato in poco tempo a far parte della rosa di Web Server più utilizzati sia grazie all’utilizzo di un’architettura event-driven simile a quella di NGINX, la quale gli permette di gestire anche i picchi più elevati di traffico, sia grazie alla possibilità di utilizzare la maggior parte delle configurazioni di Apache. Questo ultimo aspetto permette agli amministratori dei siti web di passare rapidamente da un web Server Apache a uno LiteSpeed.

Le numerose funzionalità utilizzabili senza bisogno di ricorrere a moduli aggiuntivi, rendono questo web server estremamente versatile, facile da utilizzare e sicuro, perfetto anche per gli e-commerce.