>> Tecnologia elettronica >  >> Dispositivi GPS >> RFID

HTTP: Il Protocollo che Alimenta il World Wide Web — Come Funziona

Il **Hypertext Transfer Protocol (HTTP)** è il protocollo di livello applicazione che definisce come client (browser, app) e server comunicano sul World Wide Web. È il linguaggio del web.

Modello Fondamentale: Richiesta–Risposta

HTTP segue un ciclo **client-server, senza stato, richiesta-risposta**:

  1. Client (User Agent) avvia una **connessione TCP** (di solito porta 80 per HTTP, 443 per HTTPS) all'IP del server (risolto tramite DNS dall'URL).
  2. Il client invia una Richiesta HTTP:
    GET /article/how-http-works HTTP/1.1 Host: example.com User-Agent: Mozilla/5.0 ... Accept: text/html,application/xhtml+xml Accept-Language: en-US,en;q=0.9 Cookie: session_id=abc123 
  3. Il server elabora la richiesta (instrada al gestore, interroga DB, renderizza template, controlla autenticazione).
  4. Il server invia una Risposta HTTP:
    HTTP/1.1 200 OK Date: Mon, 27 May 2024 12:00:00 GMT Server: nginx/1.24.0 Content-Type: text/html; charset=UTF-8 Content-Length: 14523 Cache-Control: private, max-age=0 Set-Cookie: session_id=abc123; HttpOnly; Secure ...contenuto pagina... 
  5. Il client riceve, analizza, renderizza. Se l'HTML fa riferimento ad altre risorse (CSS, JS, immagini, font), vengono avviate **nuove richieste** (spesso in parallelo).
  6. La connessione viene riutilizzata (Keep-Alive) o chiusa.

Metodi HTTP Chiave (Verbi)

MetodoScopoIdempotente?Sicuro?
GETRecupera risorsaSìSì
POSTInvia dati (form, API)NoNo
PUTSostituisce risorsa completamenteSìNo
PATCHAggiornamento parzialeNo*No
DELETERimuove risorsaSìNo
HEADSolo intestazioni (nessun corpo)SìSì
OPTIONSDescrive metodi consentiti (CORS)SìSì

Codici di Stato: Il Risultato a 3 Cifre

Evoluzione: HTTP/1.1 → HTTP/2 → HTTP/3

VersioneAnnoMiglioramenti Chiave
HTTP/1.11997Connessioni persistenti, encoding a blocchi, header Host (hosting virtuale), pipelining (difettoso)
HTTP/2 (h2)2015**Framing binario**, **multiplexing** (flussi paralleli su 1 connessione TCP), compressione header (HPACK), server push, priorizzazione. Richiede TLS (h2) nella pratica.
HTTP/3 (h3)2022**QUIC (UDP)** invece di TCP: **stretta di mano 0-RTT**, niente head-of-line blocking, TLS 1.3 integrato, migrazione connessione (cambio IP).

HTTPS: HTTP + TLS

**Non è un protocollo separato.** HTTP stratificato sopra **TLS (Transport Layer Security).** Cripta richiesta/risposta, autentica il server (certificato), garantisce integrità. **Standard oggi**—i browser contrassegnano HTTP come "Non Sicuro".

Perché Senza Stato? Scalabilità.

Nessuna memoria di sessione lato server tra le richieste. Lo stato gestito tramite **cookie, token (JWT), archiviazione lato client, o archivi sessione lato server (Redis) chiave per cookie.** Abilita scalabilità orizzontale (aggiungi server dietro load balancer).

La semplicità di HTTP, l'estensibilità (intestazioni, metodi) e la natura senza stato hanno reso il web scalabile a miliardi di dispositivi. QUIC/HTTP/3 ora affronta l'ultimo collo di bottiglia: il head-of-line blocking di TCP.

  1. "130225" non è un prefisso nordamericano valido
  2. Come verificare la presenza di impianti RFID
  3. Cos'è il "Prefisso Americano"? Non Esiste—Ecco Perché
  4. Come forzare il cambio IP del router DSL ogni 24 ore senza riavvio
  5. Quale Paese Rappresenta il Dominio Email yahoo.com.cn?
  6. RFID vs Infrarossi: perché RFID usa onde radio, non IR