Come funziona HTTP (Hypertect Transfer Protocol)

Dietro ogni browser Web c'è il protocollo HTTP. Internet come lo conosciamo semplicemente non esisterebbe senza questa tecnologia. Vediamo come funziona e a cosa serve.

Hypertext Transfer Protocol È il protocollo di rete standard che i browser e i server utilizzano per comunicare. HTTP si utilizza quotidianamente quando si visita un sito Web, ad esempio, citando nella URL un indirizzo specifico (ad esempio https://www.webconnect.it).

Questo protocollo è simile ad altri colli simili di trasferimento dei file utilizzati da un programma client che richiede file da un server remoto. Nel caso di HTTP, spesso è il browser Web che richiede file HTML da un server Web, che sono quindi visualizzati all’interno del browser stesso con testo, immagini, Hyperlink e altri oggetti simili.

Proprio perché i browser utilizzano come standard HTTP per comunicare, si può omettere il protocollo dalla barra dove si scrive la URL per accedere ad un indirizzo.

Storia di HTTP 

Tim Berners-Lee Ha creato inizialmente nei primi anni 90 lo standard HTTP come parte del suo lavoro per definire l’originale World Wide Web. Sono state rilasciate tre versioni primarie di questo protocollo durante gli anni 90:

  • HTTP 0.9: Supporta i documenti base degli Ipertesti
  • HTTP 1.0: Estensione per supportare website con supporti multimediali
  • HTTP 1.1: Sviluppato per indirizzare le limitazioni di prestazione di HTTP 1.0, così come specificato nello standard Internet RFC 2068

L’ultima versione, HTTP 2.0, divenne uno standard approvato nel 2015. Mantiene una retro compatibilità con HTTP 1.1, ma offresi alcuni miglioramenti aggiuntivi per le prestazioni.

Benché lo standard HTTP non effettui crittografia del traffico inviato sopra la rete, lo standard HTTPS aggiunge la crittografia ad HTTP attraverso l’utilizzo della tecnologia Secure Sockets Layer o, più tardi, Transport Layer Security.

Come funziona HTTP

HTTP è un protocollo del Layer delle applicazioni costruito sulla base di TCP che usa un modello di comunicazione client-server. I client HTTP e server comunicano attraverso messaggi di richiesta e risposte. Sono tre tipi di messaggi principali di HTTP: GET, POST e HEAD.

  • HTTP GET — Un messaggio inviato al server contiene solamente una URL. Possono essere aggiunti zero o più parametri di dati opzionali aggiunti alla fine della URL. Il server processa le porzioni di dati opzionali della URL, se presenti e restituisce i risultati al browser (una pagina Web o un elemento della pagina due).
  • HTTP POST — I messaggi includono qualsiasi altro parametro di dati opzionale nel corpo del messaggio di richiesta piuttosto che aggiungerlo alla fine della URL.
  • HTTP HEAD — Le richieste azionano allo stesso modo come le richieste GET. Invece di rispondere con il contenuto intero della URL, il server restituisce solamente le informazioni della testata (contenute all’interno della sezione HTML).

Il browser inizia una comunicazione con un server HTTP avviando connessione TCP al server. La sessione di navigazione Web usa la porta del server 80 di default, anche se altre porte come la 8080 sono utilizzate certe volte.

Dopo che la sessione viene stabilita, lo scambio dei dati avviene attraverso l’invio e la ricezione di messaggi HTTP mentre si visita la pagina Web.

HTTP è chiamato un sistema senza Stato, che significa che a differenza di altri colli di trasferimento dei file come FTP, la connessione HTTP viene abbandonata dopo che la richiesta è stata completata. Così, dopo che il browser Web ha inviato la richiesta e il server ha risposto con la pagina, la connessione viene chiusa.

Problemi di HTTP 

I messaggi trasmessi tramite HTTP falliscono per diverse ragioni:

  • Errore dell’utente
  • Malfunzionamento del browser Web o del server Web
  • Errori nella creazione delle pagine Web
  • Problemi temporanei di rete

Quando questi problemi vengono, il protocollo cattura la causa dell’errore e riporta un codice errore indietro al browser chiamato codice di stato HTTP. Gli errori cominciano con un certo numero per indicare La tipologia malfunzionamento.

Per esempio, gli errori con un codice iniziante con il quattro indicano che la richiesta per una pagina non può essere completata propriamente per il fatto che la richiesta contiene una sintassi non corretta. Ad esempio, gli errori 404 significano che la pagina non può essere trovata; alcuni siti Web o furono anche una pagina di errore 404 personalizzata.

Rispondi