De ce și cum să activezi HTTP/2 pentru site-ul tău

HTTP/2 crește considerabil viteza de încărcare a site-urilor pe desktop și pe telefoanele mobile, reduce consumul de trafic internet, oferă securitate sporită și alte facilități. Iar acum este mai ușor ca niciodată să activezi HTTP/2 pe contul tău de găzduire web.

HTTP  este unul din cele mai utilizate protocoale din internet. Cu ajutorul lui se face legătură între serverul web și utilizatorul din fața calculatorului. Protocolul HTTP/1.1 a fost standardizat în anul 1999 și din acel moment, vreme de 16 ani nu a mai suferit modificări majore.

Condițiile actuale impuse de utilizatori fac ca acest protocol să nu fie utilizat doar pentru transferul paginilor web (HTML+CSS). A apărut nevoia de utilizare a transferului de fișiere, streaming audio și video care prin dimensiunile lor pot face ca perioada de încărcare a unui site sau a unei aplicații să fie mai mare. Trăind într-o eră a vitezei acest lucru a trebuit cumva corectat astfel încât ultizatorul final să nu fie afectat.

Au existat mai multe tentative în acest sens, una dintre cele mai serioase fiind a celor de la Google. Aceștia au dezvoltat protocolul SPDY ca soluție alternativă și îmbunătățită pentru HTTP. Îmbunătățirile aduse de SPDY au fost semnificative însă ele nu au avut un impact foarte mare fiind utilizate de un număr relativ mic de site-uri sau aplicații. A devenit astfel tot mai evident faptul că protocolul actual HTTP, atât de intens utilizat are nevoie de o actualizare conformă cu cerințele actuale din lumea internetului.
În acest sens, IETF (Internet Engineering Task Force), preluând câteva dintre caracteristicile semnificative ale SPDY, a lansat în 2015 HTTP/2.

Ce este HTTP/2?

HTTP/2 este cea mai nouă versiune majoră a protocolului HTTP și vine să aducă îmbunătățiri semnificative în special la nivelul timpului de încărcare și răspuns. Un aspect foarte important în dezvoltarea acestui protocol este faptul că s-a ținut foarte mult cont de părerea utilizatorilor, astfel încât HTTP/2 corespunde din toate punctele de vedere cerințelor actuale. Ca și developer al unui website mai complex, nu vei mai fi nevoit să apelezi la tot felul de trucuri (ex: domain sharding, concatenare fișiere…) prin care optimizezi conținutul și resursele disponibile pentru a obține un timp cât mai bun de încărcare. HTTP/2 vine să ușureze astfel și munca programatorilor care vor putea să își utilizeze ingeniozitatea în alte scopuri.

De ce să utilizezi HTTP/2?

Utilizarea acestui nou protocol nu va implica modificări în codul sursă al site-ului sau aplicației tale. Trebuie menționat faptul că în mare, acesta păstrează partea de sintaxă din HTTP, schimbarea majoră fiind la nivelul transmisiei de date între client și server.

Pentru a sublinia beneficiile utilizării acestui nou protocol, le vom enumare și explica în cele ce urmează:

1. Multiplexarea

Probabil ce mai importantă îmbunătățire adusă în HTTP/2 este multiplexarea. Știm că până acum, în cadrul HTTP pentru fiecare resursă solicitată, browserul deschidea o sesiune TCP către server și primea răspunsul dorit. În momentul în care numărul resurselor solicitate era mai mare, apăreau probleme la nivelul acestui schimb de  date. De aceea, în cadrul HTTP/2 s-a introdus multiplexarea, care permite browserului ca în cadrul unei singure conexiuni TCP să includă mai multe solicitări.

Ca acest lucru să fie perceput cât mai exact, facem o paralelă cu un exemplu din viață cotidiană. Suntem acasă și ne gândim să gătim o pizza, pentru care avem nevoie să cumpărăm de la magazin aluat, șuncă și cașcaval. Dacă am funcționa pe baza protocolului HTTP, ar trebui ca pentru fiecare ingredient să mergem câte o dată la magazin. Practic ar trebui să efectuam 3 deplasări. În cazul în care s-ar aplica protocolul HTTP/2, acesta ne-a perminte ca în cadrul unei singure deplasări să achiziționăm cele 3 ingrediente și revenim cu toate acasă.

Fără calcule și date exacte ne putem da seama foarte ușor că timpul alocat acestei operațiuni este unul mult mai redus în cazul celei de-a doua opțiuni.

2. Compresie header

HTTP/2 utilizează HPACK pentru compresia headerelor. Schimbul de informații între browser și server este astfel mai rapid și cantitatea informațiilor este mult redusă. Metoda este mult mai practică decât cea utilizată în cadrul vechiului protocol întrucât acolo de fiecare dată când browserul solicită o informație, transmite în cadrul ei și un header, iar la rândul lui serverul include în răspunsul ce îl returnează un header.

3. Server Push

Cu ajutorul HTTP/2 cererile transmise de browser către server sunt reduse semnificativ . Asta pentru că serverul cu HTTP/2 știe să reacționeze proactiv la solicitarea anterioară primită din partea browserului.

De exemplu, dacă browserul solicită de la server o informație, se va deschide o sesiune TCP care va rămâne activă și după ce serverul a returnat răspunsul. Funcția server push face ca în momentul în care serverul primește o informație nouă, o va transmite automat către browser fără ca acesta să mai facă o altă cerere. Din nou și de aici putem deduce ușor că timpul de încărcare se va reduce semnificativ.

Imagine preluată de pe cloudflare.com

4. Prioritizare flux date

Vorbim despre un mecanism disponibil în cadrul browserului care vine să completeze opțiunea de multiplexare. Prin acest mecanism un browser care acceptă HTTP/2 poate decide ordinea în care sunt încărcate informațiile solicitate. Utilizând această funcție browserul este capabil, spre exemplu, în momentul în care se accesează o pagină să încarce prima dată conținutul HTML, apoi CSS-ul, urmat de Javascript și în final imaginile, dacă este cazul. Acest flux prioritizat face ca redarea pagini solicitate să se facă mult mai facil și rapid.

5. Compatibilitate cu majoritatea serviciilor și programelor

În acest moment HTTP/2 este compatibil cu un număr mare de servicii și programe de soft utilizate în această industrie. Printre aceastea amintim: apache, apache tomcat, nginx, Litespeed, Microsoft IIS (Windows Server 2016), Citrix și multe altele. Vedem așadar din acestă varietate că nu ne vom lovi de impedimente în utilizarea noului protocol.

Beneficiile sunt multiple însă noi am ales să le subliniem în special pe cele de mai sus care practic fac ceea ce ne interesează cel mai mult ca utilizatori ai unui serviciu de găzduire web. Acestea îmbunătățesc timpul de încărcare și sporesc securitatea.

Mai departe vom vedea cum poți utiliza HTTP/2 dacă ești client Hosterion.

Cum să activezi HTTP/2 pe serviciul de găzduire web de la Hosterion?

Pe serverele noastre de găzduire HTTP/2 poate fi utilizat de către toți clienții, indiferent de pachetul de găzduire web ales. Pentru ca site-ul tău să poată servi conținut HTTP/2 este nevoie să instalezi un certificat SSL și să faci redirectarea de la http la https.
Un aspect important în utilizarea acestui protocol este acela că necesită utilizarea unui certificat SSL. Practic HTTP/2 funcționează atât pe varianta http cât și pe https. Necesitatea utilizării unui certificat SSL se datorează faptului că Google Chrome și Mozilla Firefox au impus anumite limitări. Ambele suportă HTTP/2 doar pe varianta securizată https. Noi considerăm acest lucru un beneficiu întrucât sporim partea de securitate.

În anumite dezbateri referitoare la acest subiect , utilizarea unui certificat SSL pentru a beneficia de HTTP/2 este considerată un dezavantaj. “Dezavantajul” ar fi reprezentat de costurile suplimentare ale unui certificat SSL, însă în cadrul găzduirii web de la Hosterion, beneficiezi de certificate SSL gratuite. Eliminăm din start costul suplimentar și putem trece fără probleme la activarea certificatul și mai departe implicit la utilizarea HTTP/2. Trebuie să menționăm aici faptul că protocolul HTTP/2 este compatibil doar cu anumite versiuni ale browserelor. Poți verifica acest lucru aici.

Probabil acum te întrebi ce se întâmplă cu utilizatorii care folosesc versiuni mai vechi sau browserul lor nu este pur și simplu compatibil cu HTTP/2? Nu vor mai putea accesa site-ul tău dacă activezi HTTP/2? Ei bine acest lucru nu se va întâmpla. Site-ul tău va fi în continuare accesibil pentru toți vizitatorii. Asta pentru că trecerea de la HTTP/1.1 la HTTP/2.0 nu se face brusc, existând o perioadă de tranziție. Serverele și browserele care răman compatibile doar cu HTTP  1.1 vor putea totuși să comunice cu serverele sau browserele compatibile cu HTTP/2 (ambele părți vor avea capacitatea de a decide ce versiune va fi folosită pentru a comunica între ele).

Imagine preluată de pe nginx.com

Menționam mai sus că este nevoie sa urmăm anumiți pași pentru activarea HTTP/2. Aceștia sunt:

  1. Cum se face activare certificatului SSL gratuit:
    1. Linux – cPanel
    2. Windows – Plesk
  2. Cum se face trecerea de la http la https:

Cum verificăm dacă HTTP/2 este activ?

În acest moment, dacă am parcurs corect pașii de mai sus, site-ul nostru ar trebui să aibe un certificat SSL valid și să funcționeze pe https. Implicit este activ în acest moment și protocolul HTTP/2. Să vedem mai departe cum putem verifica dacă HTTP/2 este activ. Vom exemplifica metodele de verificare în funcție de browserul utilizat:

  • Google Chrome:

Instalăm extensia HTTP Indicator în Google Chrome. După ce extensia este adăugată și activă în Google Chrome vom accesa site-ul nostru. Vom ști că HTTP/2 este activ dacă vom vedea o imagine similară cu cea de mai jos:

  • Mozilla:

Vom instala aceeași extensie și vom accesa site-ul nostru. Vom ști că HTTP/2 este activ dacă vom vedea o imagine similară cu cea de mai jos:

De asemenea o altă verificare se poate face utilizând și testul de aici.

În acest moment avem și confirmarea că HTTP/2 este activ așa că site-ul nostru va beneficia printre altele de:

  • Timp de încărcare mai rapid;
  • Securitate sporită;
  • SEO îmbunătățit;

Subiectul este unul extrem de vast și beneficiile, cu siguranță, sunt multiple. Poți efectua un test live pentru a vedea impactul protocolului HTTP/2, în cadrul acestui demo. Concret, în cazul site-ului nostru, aceastea vor putea fi observate în momentul în care vom utiliza în „producție” protocolul HTTP/2.

Te încurajăm să urmezi pașii pe care i-am parcurs mai sus pentru activarea certificatului SSL și trecerea de la http la https. Te vei putea bucura astfel de utilizarea noului protocol HTTP/2 care așa cum am văzut, promite să îmbunătățească semnificativ performanțele site-ului tău.

Dacă ai un subiect interesant bazat pe datele prezentate mai sus, lasă-ne un comentariu și îl dezbatem împreună.

Pagina anterioară

Domeniu internet .bargains– extensia săptămânii

Pagina următoare

Domeniu internet .online – extensia săptămânii

  1. Marius M.

    Din pacate nu merge http/2 cu versiuni mai vechi de PHP.

    A trebuit sa instalez o distributie mai veche ca sa aiba PHP 5.6 si din pacate versiune de server nu suporta http/2.

  2. HTTP/2 nu depinde de versiunea de PHP, dar depinde intr-adevar de serverul web (si versiunea acestuia).

    Oricum, situatia prezentata ar merge fara probleme la noi pentru ca desi folosim cea mai noua distributie CentOS, clientii pot alege din cPanel versiuena de PHP care sa ruleze: 7.1, .7.0, 5.6, 5.5 sau 5.4.

    – Adrian Andreiaș, Hosterion

  3. Anton Daniel Sebastian

    vreau sa imi fac site web, dar nu reusesc.am domeniu salvat pe un an.o sa imi expire in februarie 2018.am nevoie de ajutor.ce preturi exista?

  4. Salut, Anton,

    Cred cel mai simplu mod de a avea un site este să folosești WordPress.
    Dacă ai un cont de găzduire web la noi, îți vom instala noi WordPress și o temă.

    Îți poți alege o temă (adică un design) WordPress de aici: https://wordpress.org/themes/

    – Adrian Andreiaș, Hosterion

  5. Am un vps ubuntu 16 cu php-fpm 7.0 dar nu pot da instalez http2 sub nici o forma am vazut destule tutoriale dar nu merge ma puteti ajuta cu un sfat?

  6. A dude

    Am instalat extensia in Chrome. Site-ul vostru da rezultat gri 🙂

  7. Salut, A dude,
    Am instalat extensia si verificat site-ul nostru, inclusiv zona de clienti. Pe toate apare HTTP/2 enabled. Oare ne poti spune pe ce pagina ai primit rezultatul respectiv?

    Marian Chelmus – Hosterion

  8. Se poate folosi si CloudFlare fara a se mai intala ceva

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *