Apakah kalian tahu sebelumnya apa itu HTTP ?. HTTP merupakan protokol jaringan yang digunakan oleh web browser, server, dan berbagai aplikasi lainnya untuk saling berkomunikasi satu sama lain. Tentunya protokol ini digunakan sebagai standar Network sejak tahun 1990. Nah pada 2 tahun yang lalu tepatnya bulan Mei tahun 2015 protokol HTTP ini sudah mencapai versi ke 2 atau bisa ditulis HTTP/2. HTTP/2 merupakan pengembangan lanjutan dari protokol SPDY yang dikembang oleh Google sebelumnya.

Tentang HTTP

Ketika HTTP pertama kali diperkenalkan ke khalayak, protokol ini dianggap sebagai protokol yang sederhana. Namun, waktu membuktikan bahwa persepsi tersebut tidak benar. HTTP 1.0 yang dirumuskan melalui RFC 1945 merupakan dokumen spesifikasi berjumlah 60-halaman, dan jumlah halaman dokumen spesifikasi HTTP 1.1 yang dirilis 3 tahun setelahnya mencapai 176 halaman! Tidak berhenti sampai disitu, ketika tim IETF selesai merumuskan pengembangan spesifikasi, dokumen HTTP 1.1 dipecah-pecah menjadi 6 dokumen dengan masing-masing jumlah dokumen yang jauh lebih banyak dari dokumen sebelumnya (RFC 7230 – RFC 7235) [1]. Berikut adalah ilustrasi betapa kompleksnya dokumen spesifikasi HTTP 1.1 [2]:

  • RFC 7230. HTTP/1.1: Message Syntax and Routing
  • RFC 7231. HTTP/1.1: Semantics and Content
  • RFC 7232. HTTP/1.1: Conditional Requests
  • RFC 7233. HTTP/1.1: Range Requests
  • RFC 7234. HTTP/1.1: Caching
  • RFC 7235. HTTP/1.1: Authentication

Tidak dipungkiri, seiring berkembangnya versi HTTP, kompleksitasnya pun turut berkembang. Salah satu pemicunya tentu saja karena kebutuhan teknis yang semakin kompleks dan isu untuk melakukan efisiensi pada koneksi TCP antara client dan server.

Konsep persistent connection yang diperkenalkan pada HTTP/1.1

Tidak berhenti sampai disitu, pada HTTP/1.1, juga diperkenalkan konsep pipelining. Idenya adalah agar client dapat mengirimkan beberapa request ke server secara simultan tanpa harus menunggu beberapa response dari server diterima sepenuhnya terlebih dahulu.

Konsep pipelining yang diperkenalkan pada HTTP/1.1

Pada protokol HTTP/2, proses ini kembali dicoba diperbaiki melalui konsep single, persistent connections serta multiplexing. Melalui konsep ini, maka hanya akan ada satu koneksi yang digunakan untuk membuka sebuah halaman Network.

Berikut adalah beberapa fitur baru dari HTTP/2 yang diklaim dapat memberikan perbaikan secara signifikan:

  • Single connection. Hanya dibutuhkan 1 koneksi ke server untuk membuka sebuah halaman web. Koneksi tersebut akan terus dibuka selama halaman web dibuka oleh pengguna. Hal ini diklaim dapat mengurangi RTT (round-trip time) yang dibutuhkan untuk membuka beberapa koneksi TCP.
  • Multiplexing. Request dapat dikirimkan secara simultan melalui koneksi yang sama.
  • Server push. Resource tambahan dapat dikirimkan ke client untuk penggunaan masa mendatang.
  • Prioritization. Request dapat diberikan dependency level yang dapat digunakan oleh server untuk mengirimkan resource dengan prioritas lebih tinggi terlebih dulu.
  • Binary. Fitur ini membuat server lebih mudah untuk melakukan parsing terhadap setiap request dari client. Dengan mengirimkan binary, tidak diperlukan waktu tambahan lagi untuk melakukan translasi informasi dari text ke binary.
  • Header compression. HTTP/2 menggunakan kompresi HPACK yang diklaim dapat mengurangi overhead.

Secara umum, berikut adalah sebagian batasan masalah dari pengembangan protokol HTTP/2:

  • 1) http2 harus tetap mempertahankan paradigma HTTP. HTTP masih tetap merupakan protokol dimana client mengirimkan request ke server melalui TCP.
  • 2) Tautan http:// dan https:// tidak boleh dirubah. Terlalu banyak web yang telah menggunakan protokol ini, sehingga dapat menyebabkan kekacauan jika sampai terjadi perubahan.
  • 3) HTTP1 masih akan tetap digunakan selama beberapa dekade kedepan, sehingga http2 harus dapat menjembatani transisi tersebut.
  • 4) Tidak ada lagi versi minor.

Cara Mengaktifkan Fitur HTTP/2 di CWP versi 7

Nah dari sisi kegunaan HTTP sendiri kita udah tahu ya dipotongan artikel diatas, nah disini Saya mau share bagaimana sih cara penerapan HTTP/2 untuk kalian para pengguna CentosWebPanel versi 7.

Ikuti langkah ini step by step yah :

Tentukan terlebih dahulu untuk webserver yang akan kalian gunakan, dari sisi Saya sendiri menyarankan 2 opsi yang pertama webserver dengan Apache & Nginx Reverse Proxy atau Apache & Varnish Cache & Nginx Reverse Proxy. Pastikan juga fitur SSL sudah terinstall pada domain yang akan diaktifkan fitur HTTP/2 nya. Free SSL dari Letsencrypt juga bisa berjalan kok untuk HTTP/2.

  • STEP 1
    Enable/install Nginx + Apache or Nginx + Apache + Varnish

    Webserver
  • STEP 2
    Login via Terminal dengan rules “Root” ketik perintah dibawah ini :

    cd /etc/nginx/conf.d

    Lalu edit untuk ssl config domain Kalian yang mau diaktifin fitur HTTP/2 sebelumnya check terlebih dahulu fitur HTTP/2 sudah aktif atau belum di https://tools.keycdn.com/http2-test

    Test HTTP 2
  • STEP 3Setelah itu edit file domain.com_ssl.conf didalam direktori /etc/nginx/conf.d/ lalu jalankan perintah dibawah ini (Example:)
    nano domainkamu.com_ssl.conf

    Cari script seperti dibawah ini lalu tambahkan sedikit script :

    server {
    listen ipservermu:443;

    menjadi

    server {
    listen ipservermu:443 ssl http2;

    Kalian hanya menambahkan “ssl http2“.

  • STEP 4
    Silahkan restart webserver kalian dengan menjalankan perintah :

    service nginx restart

    Lalu lakukan kembali pengecekan pada situs https://tools.keycdn.com/http2-test

    Support HTTP/2

Selamat website kalian saat ini sudah mendukung fitur HTTP/2 howray !!. Cukup sekian tulisan kurang berfaedah ini semoga bermanfaat untuk kalian para pecinta CentosWebPanel. Thank You !!

Sumber 1 : blog CloudKilat
Sumber 2 : mystery data

Leave a Reply