Az Nginx egy nyílt forráskódú webszerver, amely hatékony teljesítménye, alacsony memóriafogyasztása és a különböző protokollok erőteljes támogatása miatt sok rendszergazda és fejlesztő szívét elnyerte. Ma a HTTP/2 támogatás konfigurálásáról fogunk beszélni az Nginxben.

A HTTP/2 a HTTP protokoll továbbfejlesztése, amely javítja a szerver és a felhasználó közötti adatátvitelt. A HTTP 1.1 helyébe lép, amely korlátozta az egyidejű kapcsolatok számát, és ezért lassította a nehéz oldalak betöltését. A HTTP/2 ezt a problémát a párhuzamos adatbetöltés és a HTTP-fejlécek tömörítésének lehetővé tételével oldja meg.

Miért fontos a HTTP/2-re való átállás?

A HTTP/2-re való áttérés nemcsak a webhely betöltését gyorsítja fel, hanem az adatátvitel biztonságát is növeli. Minden modern böngésző megköveteli, hogy a webhelyek HTTPS-t használjanak a HTTP/2 támogatásához, ami biztonságosabbá teszi a szerver és a látogatók közötti adatátvitelt.

A HTTP/2-re való átállás folyamata

Mielőtt elkezdené a HTTP/2 beállítás át, rendelkeznie kell egy Ubuntu 18.04-et futtató szerverrel és telepített Nginx-szel. Továbbá a domainnevét a szerverre kell irányítani, és egy SSL-tanúsítványt (például Let’s Encrypt) kell telepíteni a domainhez.

1. A kiszolgáló beállítása

Nyissa meg a tartomány konfigurációs fájlját:

vim /etc/nginx/sites-available/your_domain

HTTP/2 támogatás hozzáadása IPv6 és IPv4 kapcsolatokhoz:

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

Mentse el a módosításokat, és ellenőrizze a szintaxist:

nginx -t

2. Javított biztonság

A biztonság javítása érdekében zárja ki a nem biztonságos kódokat. A domain konfigurációs fájljában módosítsa az ssl_ciphers opciót:

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

Ellenőrizze a szintaxist, és indítsa újra a kiszolgálót:

nginx -t
systemctl újraindítás nginx.service

3. HTTP Strict Transport Security (HSTS) hozzáadása

A még nagyobb biztonság érdekében adja hozzá a HTTP Strict Transport Security fejlécet az Nginx konfigurációs fájljához. Ez a fejléc biztosítja, hogy a böngészők csak HTTPS kapcsolatokat használjanak.

Az Nginx konfigurációs fájlban:

add_header Strict-Transport-Security "max-age=15768000; includeSubDomains" always;

Ellenőrizze a szintaxist, és indítsa újra a kiszolgálót.

4. A HTTP/2 helyes működésének ellenőrzése.

A HTTP/2-t a curl paranccsal tesztelheti:

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

A kiszolgáló válaszában meg kell említeni a HTTP/2-t.

A Google Chrome és a fejlesztői eszközök segítségével is ellenőrizheti a HTTP/2 támogatását.

Mostantól webhelye készen áll a HTTP/2 – a HTTP protokoll gyorsabb és biztonságosabb változata 🚀 – használatára.

Ne feledje, hogy szerverét mindig naprakészen és biztonságosan tartsa. Sok szerencsét!!!!

Olvassa el továbbá:

Kérdések és válaszok

Milyen előnyökkel jár a HTTP/2 használata a HTTP/1.1-hez képest?

A HTTP/2 számos előnnyel jár, többek között jobb teljesítményt nyújt az olyan funkciók révén, mint a multiplexelés és a fejléctömörítés, nagyobb biztonságot a beépített titkosítás révén, valamint a modern webes technológiák jobb támogatását.

HTTP/2-támogatás konfigurálásakor engedélyeznem kell az SSL/TLS protokollt?

Igen, az SSL/TLS engedélyezése elengedhetetlen a HTTP/2-támogatás konfigurálásakor az ügyfelek és a kiszolgáló közötti biztonságos kommunikáció biztosítása érdekében. Az SSL/TLS titkosítás megvédi az érzékeny adatokat a lehallgatástól és a jogosulatlan hozzáféréstől.

Beállítható a HTTP/2 támogatás az Ubuntu régebbi verzióin?

Bár technikailag lehetséges a HTTP/2-támogatás konfigurálása az Ubuntu régebbi verzióin, például a 16.04-en, az optimális kompatibilitás és támogatás érdekében ajánlott az Ubuntu 18.04 vagy újabb verziót használni.

Hogyan ellenőrizhetem, hogy a HTTP/2 engedélyezve van-e az Nginx kiszolgálón?

Ellenőrizheti, hogy a HTTP/2 engedélyezve van-e az Nginx-kiszolgálón olyan eszközökkel, mint a curl vagy online HTTP/2 tesztelési szolgáltatások segítségével. Alternatív megoldásként az Nginx kiszolgáló naplóinak vizsgálata képet adhat az ügyfélkapcsolatok által használt protokollverzióról.

A HTTP/2-támogatás engedélyezése további kiszolgálói erőforrásokat igényel?

A HTTP/2-támogatás engedélyezése a protokoll megnövekedett összetettsége miatt a HTTP/1.1-hez képest némileg több kiszolgálói erőforrást igényelhet. A teljesítményelőnyök azonban általában felülmúlják a minimális erőforrásigényt.

Visszaállhatok HTTP/1.1-re, ha szükséges a HTTP/2-támogatás beállítása után?

Igen, szükség esetén az Nginx konfigurációs beállításainak módosításával visszaállhat a HTTP/1.1-re. Javasoljuk azonban, hogy a módosítások elvégzése előtt alaposan tesztelje webhelye kompatibilitását és teljesítményét.

A szerzőről

Andrii Kostashchuk

Andrii különböző nyelveken, különböző platformokra és rendszerekre történő programozásban szerzett tapasztalattal rendelkezik. Több mint 8 évet töltött az internetes szférában, ahol különböző CMS-ekkel dolgozott, mint például: Opencart, Drupal, Joomla, és természetesen a legnépszerűbb tartalomkezelő rendszerrel, a WordPress-szel.

Minden cikk megtekintése