Kuinka ottaa HTTP/2.0 käyttöön Nginxissä


HTTP/2 on uusin standardi HTTP-protokollalle, se on HTTP/1.1:n seuraaja. Siitä on tulossa yhä suositumpi, koska se tuo web-kehittäjille ja käyttäjille yleensäkin etuja. Se tarjoaa optimoidun HTTP-semantiikan kuljetuksen tukemalla kaikkia HTTP/1.1:n ydinominaisuuksia, mutta pyrkii olemaan tehokkaampi monella tapaa.

HTTP/2:n lisäksi on monia ominaisuuksia, jotka antavat sinulle enemmän mahdollisuuksia optimoida verkkosivustoa/sovellusta. Se tarjoaa todellisen multipleksoinnin ja samanaikaisuuden, paremman otsikon pakkaamisen (binäärikoodauksen), paremman priorisoinnin, paremmat vuonhallintamekanismit ja uuden vuorovaikutustilan nimeltä "server push", jonka avulla palvelin voi lähettää vastauksia asiakkaalle. . Puhumattakaan, HTTP/2 perustuu Googlen kokeelliseen SPDY-protokollaan.

Siksi HTTP/2:n ensisijaisena tavoitteena on lyhentää verkkosivun yleistä latausaikaa ja parantaa siten suorituskykyä. Se keskittyy myös verkko- ja palvelinresurssien käyttöön sekä tietoturvaan, koska HTTP/2:ssa SSL/TLS-salaus on pakollinen.

Tässä artikkelissa opit, kuinka Nginx otetaan käyttöön HTTP/2-tuella Linux-palvelimissa.

Edellytykset:

  • Toimiva NGINX -version 1.9.5 tai uudemman asennus, joka on rakennettu ngx_http_v2_module-moduulilla.
  • Varmista, että sivustosi käyttää SSL/TLS-varmennetta. Jos sinulla ei ole sellaista, voit hankkia Let’s Encryptin tai käyttää itse allekirjoitettua varmennetta.

Voit asentaa NGINX:n tai ottaa sen käyttöön LEMP-pinon avulla seuraavissa oppaissa kuvatulla tavalla:

  • Kuinka asentaa Nginx CentOS 8:aan
  • Kuinka asentaa LEMP-palvelin CentOS 8:aan
  • Kuinka asentaa NGINX, MySQL/MariaDB ja PHP RHEL 8:aan
  • LEMP-pinon asentaminen PhpMyAdminilla Ubuntu 20.04:ssä
  • Asenna Nginx palvelinlohkoilla (virtuaaliset isännät) Debian 10:een
  • Kuinka käyttää Nginxiä HTTP-kuormituksen tasaajana Linuxissa

Kuinka ottaa HTTP/2.0 käyttöön NGINX:ssä

Jos sinulla on NGINX asennettuna, varmista, että se on rakennettu ngx_http_v2_module-moduulilla suorittamalla seuraava komento.

strings /usr/sbin/nginx | grep _module | grep -v configure| sort | grep ngx_http_v2_module

Kun NGINX palvelee verkkosivustoa/sovellusta HTTPS-määrityksenä, avaa verkkosivustosi virtuaalipalvelinlohko (tai virtuaalipalvelin) editointi.

vi /etc/nginx/conf.d/example.com.conf                    [On CentOS/RHEL]
sudo nano /etc/nginx/sites-available/example.com.conf    [On Ubuntu/Debian]

Voit ottaa HTTP/2-tuen käyttöön lisäämällä http2-parametrin kaikkiin listen-käskyihin seuraavan kuvakaappauksen mukaisesti.

listen 443 ssl http2;

Esimerkkipalvelinlohkon kokoonpano näyttää alla.


server {
        server_name example.com www.example.com;
        access_log  /var/log/nginx/example.com_access.log;
        error_log  /var/log/nginx/example.com_error.log;

        listen [::]:443 ssl ipv6only=on http2; # managed by Certbot
        listen 443 ssl http2; # managed by Certbot

        ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
        ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
        include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
        ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot    
}

Tallenna muutokset tiedostoon ja sulje se.

Tarkista sitten NGINX:n määrityssyntaksi, jos se on kunnossa, käynnistä Nginx-palvelu uudelleen.

nginx -t
systemctl restart nginx

Avaa seuraavaksi verkkoselain varmistaaksesi, toimiiko verkkosivustosi HTTP/2 kautta.

http://www.example.com

Pääset HTTP-otsikoihin napsauttamalla hiiren kakkospainikkeella näkyvää verkkosivua, valitsemalla vaihtoehtoluettelosta Tarkista avataksesi kehittäjätyökalut, napsauta sitten Verkko-välilehteä ja lataa uudelleen. sivulle.

Tarkista kohdasta Protokollat, mitä sivustosi käyttää (jos et näe Protokollat-otsikkoa, napsauta hiiren kakkospainikkeella mitä tahansa otsikkoa, esim. Nimi ja valitse sitten Protokolla luettelosta näyttääksesi sen otsikona).

Jos sivustosi toimii HTTP/1.1-protokollalla, näet Protokolla-kohdassa http/1.1, kuten seuraavassa kuvakaappauksessa.

Jos se on käynnissä HTTP/2:lla, näet Protokolla-kohdassa h2 seuraavan kuvakaappauksen mukaisesti. Voit halutessasi poistaa selaimen välimuistin käytöstä nähdäksesi viimeisimmän sisällön, joka tarjotaan suoraan verkkopalvelimelta.

Siinä kaikki! Lisätietoja on ngx_http_v2_module-moduulin ohjeissa. Älä epäröi esittää kysymyksiä alla olevan palautelomakkeen kautta.