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á:
- A legjobb operációs rendszer kiválasztása a szerverhez: CentOS vs. Ubuntu
- Mi a garantált memória és a SWAP? Mik a különbségek
- Mi az a VDS/VPS szerver és hogyan válasszuk ki a legjobbat?
Kérdések és válaszok
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.
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.
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.
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 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.
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.