Quasi un anno fa raccontavo di SPDY, inventato da Google per superare i limiti di HTTP. Per la mia munificenza non ne avrò a male se lo avete dimenticato, e se desiderate fare un clic e dare una ripassata fate pure, io vi aspetto qui.
Quel che importa, comunque, è che finalmente i supremi poteri dell’Internet nel febbraio 2015 hanno dato l’imprimatur ad HTTP/2, che è stato effettivamente basato sulle fondamenta di SPDY.
Il nuovo protocollo, che è destinato a regolare la trasmissione di ogni singola pagina sull’intero web, risolve alcuni annosi problemi e promette minore latenza (cioè minori attese quando chiediamo una pagina). Per i lettori che il web si limitano a sfogliarlo non c’è altro da sapere. Il consiglio è di tenere aggiornato il browser, ché già le prossime versioni di Chrome (40) e Firefox (36) supporteranno HTTP/2. Chi usa Safari dovrà forse attendere iOS 9 e chi usa Explorer sperare in Spartan. Grazie dell’attenzione, tante care cose, saluti a tutta la famiglia, via di qui.
Chi sta continuando a leggere dovrebbe avere un interesse meno superficiale nel web. Webmaster e webdesigner, creatori di contenuti ed editori, proprietari di siti web: ci sono cose che dovete sapere e cose che dovete fare per trasformare l’opportunità HTTP/2 in un concreto vantaggio. Cominciamo a pensarci riflettendo sul fatto che lo HTTP, che regola ogni scambio di informazioni tra un browser e un webserver, è un protocollo relativamente semplice definito negli anni Novanta.
I miglioramenti della versione HTTP/2 debbono tenere testa alle nuove esigenze di questo secolo e in buona parte richiedono cambiamenti al nostro lavoro. Tanto per cominciare: il più diffuso software per webserver, Apache, non supporta nativamente HTTP/2. Bisogna installarci un modulo extra, chiamato mod_spdy. Se state usando nginx, la più popolare alternativa, siete già a cavallo. Se usate un terzo sistema avete un grattacapo per le mani.
Procediamo. Chrome 40 e Firefox 36 si rifiutano di accendere HTTP/2 se non avete un certificato HTTPS. HTTPS è ormai imprescindibile: se il vostro provider ancora non lo fornisce semplicemente chiedendo con un sorriso, giubilatelo.
E ancora. HTTP/2 manda immediatamente al browser l’intera pagina (HTML, CSS, JavaScript e immagini fondamentali) ma c’è bisogno che il vostro CMS impacchetti il tutto in un unico flusso. Al momento non lo fa nessuno, anche perché i linguaggi di programmazione come PHP non ne forniscono ancora il modo. C’è da tenere le orecchie rizze e il CMS aggiornato. Se ci pensate, webdesigner, questo significa che dovremo disimparare alcuni metodi di lavoro che oggi diamo per scontati, come il raggruppamento di molte icone in uno sprite o la creazione di un unico enorme file CSS anziché un piccolo CSS per tutto il sito e tanti aggiuntivi (uno per sezione o addirittura per singola pagina). Quest’ultima soluzione presenta evidenti vantaggi sotto HTTP/2.
Se il vostro sito manipola dati sensibili — uno home banking, per esempio — una forte raccomandazione contenuta nelle specifiche HTTP/2 è che venga spenta ogni compressione, perché in passato i suoi limiti sono stati usati per bucare la sicurezza di HTTPS.
Altri trucchi, consigli, opportunità e trappole certamente emergeranno nel prossimo futuro. Riparleremo quindi di HTTP/2 quando la sua diffusione comincerà a farsi interessante.