Nginx je webový server s otvoreným zdrojovým kódom, ktorý si získal srdcia mnohých správcov a vývojárov vďaka svojmu efektívnemu výkonu, nízkej spotrebe pamäte a výkonnej podpore rôznych protokolov. Dnes budeme hovoriť o konfigurácii podpory protokolu HTTP/2 v systéme Nginx.

HTTP/2 je vývojom protokolu HTTP, ktorý zlepšuje prenos údajov medzi serverom a používateľom. Nahrádza protokol HTTP 1.1, ktorý mal limit na počet simultánnych spojení, a preto spomaľoval načítanie náročných stránok. Protokol HTTP/2 tento problém rieši tým, že umožňuje paralelné načítanie údajov a kompresiu hlavičiek HTTP.

Prečo je prechod na HTTP/2 dôležitý?

Prechod na protokol HTTP/2 nielenže zrýchľuje načítavanie webových stránok, ale zvyšuje aj bezpečnosť prenosu údajov. Všetky moderné prehliadače vyžadujú, aby webové stránky používali protokol HTTPS, ktorý podporuje protokol HTTP/2. Vďaka tomu je prenos údajov medzi serverom a návštevníkmi bezpečnejší.

Proces prechodu na HTTP/2

Skôr ako začnete nastavovať HTTP/2 , musíte mať nainštalovaný server s Ubuntu 18.04 a Nginx. Na server musí byť nasmerovaný aj názov vašej domény a pre túto doménu musí byť nainštalovaný certifikát SSL (napríklad Let’s Encrypt).

1. Nastavenie servera

Otvorte konfiguračný súbor svojej domény:

vim /etc/nginx/sites-available/your_domain

Pridanie podpory protokolu HTTP/2 pre pripojenia IPv6 a IPv4:

listen [::]:443 ssl hp2 ipv6only=on;
listen 443 ssl http2;

Uložte zmeny a skontrolujte syntax:

nginx -t

2. Zlepšená bezpečnosť

Ak chcete zvýšiť bezpečnosť, vylúčte nezabezpečené šifry. V konfiguračnom súbore domény zmeňte možnosť ssl_ciphers:

ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

Skontrolujte syntax a reštartujte server:

nginx -t
systemctl restart nginx.service

3. Pridanie protokolu HTTP Strict Transport Security (HSTS)

Ak chcete dosiahnuť ešte väčšie zabezpečenie, pridajte do konfiguračného súboru Nginx hlavičku HTTP Strict Transport Security. Táto hlavička zabezpečí, že prehliadače budú používať iba spojenia HTTPS.

V konfiguračnom súbore Nginx:

add_header Strict-Transport-Security "max-age=15768000; includeSubDomains" vždy;

Skontrolujte syntax a reštartujte server.

4. Kontrola správneho fungovania protokolu HTTP/2.

Protokol HTTP/2 môžete otestovať pomocou príkazu curl:

curl -I -L https://ваш_домен

V odpovedi servera musí byť uvedený protokol HTTP/2.

Na kontrolu podpory protokolu HTTP/2 môžete použiť aj prehliadač Google Chrome a nástroje pre vývojárov.

Teraz je vaša webová stránka pripravená na prácu s HTTP/2 – rýchlejšou a bezpečnejšou verziou protokolu HTTP 🚀.

Nezabudnite vždy udržiavať svoj server aktualizovaný a zabezpečený. Veľa šťastia!!!!

Prečítajte si tiež:

Otázky a odpovede

Aké sú výhody používania protokolu HTTP/2 v porovnaní s protokolom HTTP/1.1?

Protokol HTTP/2 ponúka viacero výhod vrátane zvýšeného výkonu vďaka funkciám, ako je multiplexovanie a kompresia hlavičiek, zvýšeného zabezpečenia vďaka zabudovanému šifrovaniu a lepšej podpore moderných webových technológií.

Musím pri konfigurácii podpory protokolu HTTP/2 povoliť protokol SSL/TLS?

Áno, povolenie protokolu SSL/TLS je pri konfigurácii podpory HTTP/2 nevyhnutné na zabezpečenie bezpečnej komunikácie medzi klientmi a serverom. Šifrovanie SSL/TLS chráni citlivé údaje pred zachytením a neoprávneným prístupom.

Môžem nakonfigurovať podporu HTTP/2 v starších verziách Ubuntu?

Hoci je technicky možné nakonfigurovať podporu HTTP/2 na starších verziách Ubuntu, napríklad 16.04, pre optimálnu kompatibilitu a podporu sa odporúča používať Ubuntu 18.04 alebo novšie.

Ako skontrolujem, či je na mojom serveri Nginx povolená podpora HTTP/2?

To, či je na vašom serveri Nginx povolený protokol HTTP/2, môžete skontrolovať pomocou nástrojov, ako je curl alebo online služby na testovanie protokolu HTTP/2. Prípadne môžete preskúmať protokoly servera Nginx, aby ste získali predstavu o verzii protokolu používanej v klientskych pripojeniach.

Vyžaduje zapnutie podpory HTTP/2 ďalšie zdroje servera?

Zapnutie podpory HTTP/2 môže vyžadovať o niečo viac zdrojov servera ako HTTP/1.1 z dôvodu väčšej zložitosti protokolu. Výhody výkonu však zvyčajne prevažujú nad minimálnymi požiadavkami na zdroje.

Môžem sa po konfigurácii podpory HTTP/2 v prípade potreby vrátiť k protokolu HTTP/1.1?

Áno, v prípade potreby sa môžete vrátiť k protokolu HTTP/1.1 zmenou konfiguračných nastavení Nginx. Pred vykonaním akýchkoľvek zmien však odporúčame dôkladne otestovať kompatibilitu a výkon vašej webovej lokality.

O autorovi

Andrii Kostashchuk

Andrii má skúsenosti s programovaním v rôznych jazykoch pre rôzne platformy a systémy. Viac ako 8 rokov pôsobí v oblasti internetu a pracuje s rôznymi CMS, ako napr: Opencart, Drupal, Joomla a samozrejme s najpopulárnejším systémom na správu obsahu WordPress.

Zobraziť všetky články