GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengaktifkan HTTP/2 di Nginx

Hypertext Transfer Protocol Versi 2 (HTTP/2 ) adalah versi terbaru dari protokol HTTP, diterbitkan sebagai standar IETF di RFC 7540 pada tahun 2015. Fokus protokol adalah pada kinerja; khususnya, latensi yang dirasakan pengguna akhir, penggunaan sumber daya jaringan dan server. Salah satu tujuan utama adalah untuk memungkinkan penggunaan koneksi tunggal dari browser ke situs Web. Protokol ini kompatibel dengan versi sebelumnya, sehingga metode HTTP, kode status, dan semantik sama dengan versi protokol sebelumnya. Nginx memiliki dukungan HTTP/2 sejak versi 1.9.5. Dalam tutorial ini, saya akan berasumsi bahwa Anda sudah memiliki konfigurasi TLS yang berfungsi, dan bahwa Anda telah menginstal versi Nginx di distribusi Linux pilihan Anda, dan bahwa Anda tahu cara menggunakan Let's Encrypt, atau Anda tahu cara mengeluarkan sertifikat yang ditandatangani sendiri.

Persyaratan

Untuk mengaktifkan HTTP/2 di Nginx, Anda harus memenuhi persyaratan berikut:

  • Nginx versi 1.9.5 atau lebih baru. Anda dapat memeriksa versi Nginx Anda dengan menjalankan (nginx -v ) perintah.
  • OpenSSL versi 1.0.2 atau lebih tinggi. Anda dapat memeriksa versi OpenSSL dengan menjalankan perintah (Versi OpenSSL).
  • Sertifikat SSL/TLS dari Let's Encrypt atau sertifikat yang ditandatangani sendiri.
  • Protokol TLS 1.2 atau lebih tinggi diaktifkan. Jika tidak, Anda tidak akan dapat menggunakan HTTP/2. Implementasi HTTP/2 harus menggunakan TLS versi 1.2 atau lebih tinggi untuk HTTP/2 melalui TLS.

Aktifkan HTTP/2 di Nginx

Untuk mengaktifkan HTTP/2 di Nginx, kita harus menambahkan http2 parameter ke listen arahan di host virtual kami:

listen 443 ssl http2;

Dan muat ulang konfigurasi Nginx Anda:

sudo systemctl reload nginx.service

Berikut adalah konfigurasi server virtual minimal yang dapat digunakan untuk mengaktifkan HTTP/2 di beberapa virtual host:

server {

listen 443 ssl http2;
listen [::]:443 ssl http2;

server_name example.com;
root /path/to/public;

ssl_certificate /path/to/certificate.crt;
ssl_certificate_key /path/to/private.key;

ssl_protocols TLSv1.2;

}

Untuk memeriksa apakah server Anda mendukung HTTP/2, Anda dapat menggunakan alat pengembang browser atau file log Nginx. Di bawah ini adalah tangkapan layar dari browser Google Chrome yang menunjukkan HTTP/2 berfungsi di domain https://example.com.

Anda juga dapat menggunakan variabel tersemat Nginx $http2 untuk melihat protokol yang dinegosiasikan. Variabel ini akan mencatat: “h2 ” untuk HTTP/2 melalui TLS, “h2c ” untuk HTTP/2 melalui cleartext TCP, atau string kosong di log akses Nginx jika dikonfigurasi untuk melakukannya.

Dan hanya itu yang diperlukan untuk mengaktifkan HTTP/2 di server Nginx Anda.

  • RFC 7540
  • HTTP/2

Linux
  1. Cara Mengaktifkan HTTP2 di NGINX

  2. Cara Mengaktifkan HTTP/2 di Nginx di Ubuntu dan CentOS

  3. Cara Mengatur Nginx dengan Dukungan HTTP/2 di Debian 9

  1. Cara Mengarahkan HTTP ke HTTPS di Nginx

  2. Cara Mengaktifkan TLS 1.3 di Nginx

  3. Cara Mengonfigurasi HTTP/2 di Nginx di Ubuntu 20.04

  1. Cara Mengaktifkan Protokol HTTP/2 dengan Apache di Ubuntu 20.04

  2. Bagaimana Mengaktifkan IPv6 di Nginx?

  3. Cara mengaktifkan kompresi GZIP di Nginx