Nginx on avoimen lähdekoodin verkkopalvelin, joka on voittanut monien ylläpitäjien ja kehittäjien sydämet tehokkaan suorituskykynsä, vähäisen muistinkulutuksensa ja tehokkaan tukensa eri protokollille ansiosta. Tänään puhumme HTTP/2-tuen määrittämisestä Nginxissä.

HTTP/2 on HTTP-protokollan kehitys, joka parantaa palvelimen ja käyttäjän välistä tiedonsiirtoa. Se korvaa HTTP 1.1:n, joka rajoitti samanaikaisten yhteyksien määrää ja hidasti siksi raskaiden sivujen lataamista. HTTP/2 ratkaisee tämän ongelman sallimalla tietojen rinnakkaisen lataamisen ja HTTP-otsakkeiden pakkaamisen.

Miksi HTTP/2:een siirtyminen on tärkeää?

Siirtyminen HTTP/2:een ei ainoastaan nopeuta verkkosivuston latautumista, vaan myös lisää tiedonsiirron turvallisuutta. Kaikki nykyaikaiset selaimet edellyttävät, että verkkosivustojen on käytettävä HTTPS:ää, jotta ne tukevat HTTP/2:ta, mikä tekee tiedonsiirrosta palvelimen ja vierailijoiden välillä turvallisempaa.

Siirtyminen HTTP/2:een

Ennen kuin aloitat HTTP/2:n määrittämisen, sinulla on oltava palvelin, jossa on Ubuntu 18.04 ja Nginx asennettuna. Lisäksi verkkotunnuksesi on osoitettava palvelimelle, ja tälle verkkotunnukselle on asennettava SSL-varmenne (esimerkiksi Let’s Encrypt).

1. Palvelimen määrittäminen

Avaa verkkotunnuksesi asetustiedosto:

vim /etc/nginx/sites-available/your_domain /etc/nginx/sites-available/your_domain

Lisää HTTP/2-tuki IPv6- ja IPv4-yhteyksille:

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

Tallenna muutokset ja tarkista syntaksi:

nginx -t

2. Parannettu turvallisuus

Turvallisuuden parantamiseksi jätä turvattomat salakirjoitukset pois. Muuta verkkotunnuksesi asetustiedostossa ssl_ciphers-vaihtoehtoa:

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

Tarkista syntaksi ja käynnistä palvelin uudelleen:

nginx -t
systemctl restart nginx.service

3. HTTP Strict Transport Securityn (HSTS) lisääminen.

Jos haluat vielä enemmän turvallisuutta, lisää HTTP Strict Transport Security -otsake Nginxin asetustiedostoon. Tämä otsake varmistaa, että selaimet käyttävät vain HTTPS-yhteyksiä.

Nginxin asetustiedostossa:

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

Tarkista syntaksi ja käynnistä palvelin uudelleen.

4. HTTP/2:n oikean toiminnan tarkistaminen.

Voit testata HTTP/2:ta curl-komennolla:

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

Palvelimen vastauksessa on mainittava HTTP/2.

Voit myös käyttää Google Chromea ja kehittäjätyökaluja HTTP/2-tuen tarkistamiseen.

Nyt verkkosivustosi on valmis toimimaan HTTP/2:n kanssa – HTTP-protokollan nopeampi ja turvallisempi versio 🚀.

Muista pitää palvelimesi aina ajan tasalla ja turvassa. Onnea!!!!

Lue myös:

Kysymyksiä ja vastauksia

Mitä etuja on HTTP/2:n käyttämisestä HTTP/1.1:een verrattuna?

HTTP/2 tarjoaa useita etuja, kuten paremman suorituskyvyn monipuolistamisen ja otsikoiden pakkaamisen kaltaisten ominaisuuksien avulla, paremman turvallisuuden sisäänrakennetun salauksen avulla ja paremman tuen nykyaikaisille verkkotekniikoille.

Pitääkö HTTP/2-tukea määritettäessä ottaa käyttöön SSL/TLS?

Kyllä, SSL/TLS-tuen ottaminen käyttöön on välttämätöntä HTTP/2-tukea määritettäessä, jotta voidaan varmistaa turvallinen viestintä asiakkaiden ja palvelimen välillä. SSL/TLS-salaus suojaa arkaluonteisia tietoja salakuuntelulta ja luvattomalta käytöltä.

Voinko määrittää HTTP/2-tuen vanhemmissa Ubuntu-versioissa?

Vaikka HTTP/2-tuen määrittäminen vanhemmissa Ubuntu-versioissa, kuten 16.04:ssä, on teknisesti mahdollista, on suositeltavaa käyttää Ubuntu 18.04:ää tai uudempaa versiota optimaalisen yhteensopivuuden ja tuen varmistamiseksi.

Miten tarkistan, onko HTTP/2 käytössä Nginx-palvelimessani?

Voit tarkistaa, onko HTTP/2 käytössä Nginx-palvelimellasi käyttämällä työkaluja, kuten curl tai online HTTP/2-testauspalveluja. Vaihtoehtoisesti Nginx-palvelimen lokien tutkiminen voi antaa käsityksen asiakasyhteyksissä käytetystä protokollaversiosta.

Vaatiiko HTTP/2-tuen käyttöönotto lisää palvelinresursseja?

HTTP/2-tuen käyttöönotto saattaa vaatia hieman enemmän palvelinresursseja kuin HTTP/1.1 protokollan monimutkaisuuden lisääntymisen vuoksi. Suorituskykyhyödyt ovat kuitenkin yleensä suuremmat kuin vähäiset resurssivaatimukset.

Voinko tarvittaessa palata HTTP/1.1:een HTTP/2-tuen määrittämisen jälkeen?

Kyllä, voit tarvittaessa palata takaisin HTTP/1.1:een muuttamalla Nginxin määritysasetuksia. On kuitenkin suositeltavaa, että testaat sivustosi yhteensopivuuden ja suorituskyvyn perusteellisesti ennen muutosten tekemistä.

About the Author

Andrii Kostashchuk

Andriilla on kokemusta ohjelmoinnista eri kielillä eri alustoille ja järjestelmiin. Hän on viettänyt yli 8 vuotta Internetin parissa työskennellen erilaisten CMS-järjestelmien kanssa, kuten: Opencart, Drupal, Joomla ja tietenkin suosituin sisällönhallintajärjestelmä WordPress.

View All Articles