HTTP
HTTP è l'acronimo di Hypertext Transfer Protocol, tradotto nella nostra lingua come Hypertext Transfer Protocol. È un protocollo di comunicazione che permette la circolazione delle informazioni attraverso il World Wide Web (WWW).
È anche interessante conoscere l'origine etimologica di queste parole che danno forma a http:
* iper, in primo luogo, deriva dal greco "hyper", che può essere tradotto come "sopra" o "su";
* testo, invece, deriva dal latino "textus" e che, a sua volta, deriva dal verbo "texere", che è sinonimo di "intrecciare" o "tessere";
* il termine transfer deriva dal verbo latino "transferre", che equivale a "trasferire" o "portare da un luogo all'altro";
* il sostantivo protocollo, da parte sua, deriva dal greco, in particolare da "protokollon". Questa parola è il risultato della somma di due componenti lessicali di quella lingua: la parola "protos", che significa "primo", e il sostantivo "kollea", che è sinonimo di "collante" o "colla".
Un protocollo di comunicazione è formato da una serie di regole che indicano come si deve stabilire un processo comunicativo. Il WWW, nel frattempo, è un sistema per trasferire documenti collegati tra loro tramite Internet (un insieme decentralizzato di reti di computer).
Quello che fa l'HTTP è definire la semantica e la sintassi utilizzate dagli elementi software che compongono l'architettura del WWW. Il protocollo segue uno schema basato su richieste che un client (come un browser web) fa a un server (un computer dove sono ospitate le pagine web), che a sua volta consegna le risposte.
Queste richieste sono messaggi in un certo formato. HTTP è responsabile di determinare quali metodi di richiesta possono essere utilizzati. Il server, nel frattempo, fornisce un codice di risposta, che è un numero con informazioni su ciò che è successo alla richiesta.
HTTP, in breve, è la base su cui è costruito il WWW. Quando un utente di Internet usa un browser (come Google Chrome o Mozilla Firefox) per visitare un sito web, sta usando una sessione HTTP per ottenere ciò che vede come risultato: il testo, le immagini e così via. Per questo motivo, gli indirizzi che vengono inseriti nella barra di navigazione di un browser iniziano con http, indicando quale protocollo verrà utilizzato per visualizzare le pagine.
Altri fatti interessanti sul protocollo HTTP sono i seguenti:
* è stato progettato negli anni 90;
* bisogna stabilire che tra l'utente e il server ci sono elementi che funzionano come intermediari. Ci riferiamo ad alcuni come il router, il modem, la fibra ottica o l'ADSL;
* quelli incaricati di gestire i messaggi HTTP sono i proxy, tra cui il filtraggio, il caching, l'autenticazione, la registrazione degli eventi, il bilanciamento delle richieste;
* del protocollo HTTP che ci interessa, spiccano tre caratteristiche fondamentali: è estensibile, è semplice e ha sessioni.
Dal suo lancio nel 1991, HTTP ha avuto molte versioni, e nella maggior parte dei casi c'è una completa retrocompatibilità, cioè la compatibilità all'indietro. L'uso dei numeri di versione è descritto in RFC 2145 (Request for Comments), il nome dato alle pubblicazioni dell'Internet Engineering Task Force (IETF), che specifica vari aspetti del suo funzionamento e quello di altre reti, come le loro procedure e protocolli.
La prima versione fu la 0.9, che ora è obsoleta. Nell'ottobre 2018 è stata rilasciata la versione 3, che introduce cambiamenti come l'uso di UDP (user datagram protocol) invece di TCP (Internet protocol family).
La prima versione era la 0.9, che ora è obsoleta.