Mengaktifkan Dukungan HTTP/2 di Nginx Server

Kamis, 06 September 2018

Mengaktifkan Dukungan HTTP/2 di Nginx Server - Nginx sendiri cukup populer karena dikenal sebagai web server yang ramah resource, mudah dikonfigurasi, dan dukungan berbagai protokol. Salahsatunya adalah protokol HTTP/2. HTTP2 sebenarnya sudah dirilis sejak 2015, dan sudah didukung oleh banyak browser modern, hanya saja sampai sekarang masih banyak yang belum mengimplementasikannya.


Perbedaan HTTP/1 dengan HTTP/2
HTTP / 2 adalah versi baru dari Hypertext Transport Protocol, yang digunakan di Web untuk mengirim halaman dari server ke browser. HTTP/2 adalah pembaruan besar pertama HTTP dalam hampir dua dekade: HTTP1.1 diperkenalkan ke publik pada tahun 1999 ketika laman web biasanya hanya berupa file HTML tunggal dengan stylesheet CSS sisipan. Internet telah berubah secara dramatis sejak itu, dan sekarang kita menghadapi keterbatasan HTTP/1.1 - protokol membatasi kecepatan transfer potensial untuk sebagian besar situs web modern karena mengunduh bagian halaman dalam antrian (bagian sebelumnya harus diunduh sepenuhnya sebelum pengunduhan bagian berikutnya dimulai), dan rata-rata halaman web modern membutuhkan sekitar 100 permintaan untuk diunduh (setiap permintaan gambar, file js, file css, dll). (sumber: Digital Ocean)

HTTP/2 memecahkan masalah ini karena membawa beberapa perubahan mendasar:
  • Semua permintaan diunduh secara paralel, bukan dalam antrian
  • Header HTTP dikompresi
  • Halaman ditransfer sebagai biner, bukan sebagai file teks, yang lebih efisien
  • Server dapat "mendorong" data bahkan tanpa permintaan pengguna, yang meningkatkan kecepatan bagi pengguna dengan latensi tinggi

Meskipun HTTP/2 tidak memerlukan enkripsi, pengembang dua browser paling populer, Google Chrome dan Mozilla Firefox, menyatakan bahwa untuk alasan keamanan mereka akan mendukung HTTP/2 hanya untuk koneksi HTTPS. Oleh karena itu, jika kalian memutuskan untuk menyiapkan server dengan dukungan HTTP/2, Anda juga harus mengamankannya dengan HTTPS.

Versi Nginx minimal yang mendukung protokol HTTP/2 adalah versi 1.9.5. Jadi sebelum mulai mengikuti tutorial ini pastikan:
Oke jadi di tutorial ini saya tidak akan membahas dari awal. Saya langsung saja bahas bagaimana cara mengaktifkan protokol HTTP/2 nya.

Pertama, kalian buka file serverblock dari website yang ingin diaktifkan dukungan HTTP/2.
nano /etc/nginx/sites-enabled/http2.linuxsec.org.conf

Lalu edit bagian listening ke 443
Ubah menjadi

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

Lalu simpan. Selanjutnya cek apakah ada kesalahan konfigurasi
nginx -t

Jika sudah oke, reload konfigurasi dengan perintah
sudo service nginx reload
Sekarang kalian bisa cek di browser yang mendukung protokol HTTP/2 seperti Firefox versi terbaru ataupun Chrome. Inspect dan lihat di bagian network.

Mudah bukan?
Oke sekian tutorial kali ini dan semoga bermanfaat.

Artikel Terkait Nginx ,Security ,Server