HOTLINE

(0275) 2974 127

CHAT WA 24/7
0859-60000-390 (Sales)
0852-8969-9009 (Support)
Blog

Tentang HTTP/2 : Manfaat Dan Cara Mengaktifkan HTTP/2 Di Web Server Apache

Kali ini kita akan membahas mengenai HTTP/2.Hypertext Transfer Protocol akrab bagi sebagian besar kita sebagai http: // di awal alamat web mengatur hubungan antara browser pengguna dan server hosting website.Setelah 16 tahun, generasi kedua dari HTTP, yaitu HTTP/2 akhirnya dirilis juga. Dengan dirilisnya HTTP/2 ini diperkirakan browsing internet semakin cepat.

Pengertian HTTP/2

HTTP/2 adalah protokol web generasi terbaru saat ini yang akan membantu mempercepat loading website dan mempunyai banyak fitur baru yang canggih.Ini merupakan revisi utama dari protokol jaringan HTTP yang digunakan oleh World Wide Web,Ini berasal dari protokol SPDY eksperimental sebelumnya ,yang awalnya dikembangkan oleh Google.HTTP/2 dikembangkan oleh kelompok kerja HTTP yang disebut httpbis dari Internet Engineering Task Force.HTTP/2 merupakan versi baru HTTP pertama sejak HTTP 1.1 yang distandarisasi dalam RFC 2068 ditahun 1997.Upaya standarisasi didukung oleh browser Chrome,Opera,Mozilla firefox,Safari,Internet explorer,Edge,Amaxon silk.Di tahun 2015 Sebagian besar browser utama telah menambahkan dukungan HTTP/2.Dari 48% yang teratas 10 juta situs web mendukung HTTP / 2,ini menurut W3Techs, pada Agustus 2020.Terkait pengganti yang diusulkan untuk HTTP/2 adalah HTTP/3,ini merupakan revisi besar yang dibangun di atas konsep yang ditetapkan oleh HTTP / 2.

Tujuan HTTP/2

beberapa tujuan dan masalah yang menjadi perhatian :

  • Buat mekanisme negosiasi yang memungkinkan klien dan server memilih untuk menggunakan HTTP 1.1, 2.0, atau kemungkinan protokol non-HTTP lainnya.
  • Pertahankan kompatibilitas tingkat tinggi dengan HTTP 1.1 (contoh :metode,kode status,URI, dan sebagian besar kolom header).
  • Kurangi latensi(penundaan waktu) untuk meningkatkan kecepatan memuat halaman di browser web dengan mempertimbangkan:
    • Data kompresi dari HTTP header.
    • HTTP/2 Sever Push.
    • pipelining permintaan.
    • memperbaiki masalah pemblokiran head of line di HTTP 1.x.
    • multiplexing beberapa permintaan melalui satu koneksi TCP.
  • Dukungan umum kasus penggunaan HTTP, seperti web browser desktop, browser web mobile, API web, ada server web pada berbagai skala,proxy server , proxy reserve server,firewall, dan jaringan pengiriman konten.
  • Kritik masa Kak Hanna.

Kritik Yang Pernah Di alami HTTP/2

Meski mengalami perkembeangannya,HTPP2 sendiri telah menghadapi banyak kritik,berikut daftarnya :

The FreeBSD dan  pengembang Poul Henning Kamp menegaskan bahwa standar disiapkan pada jadwal realistis singkat,mengesampingkan dasar apapun untuk HTTP / 2,selain protokol SPDY dan mengakibatkan hilangnya kesempatan lain untuk perbaikan.Kamp mengkritik protokol itu sendiri karena tidak konsisten dan memiliki kompleksitas yang luar biasa dan tidak perlu.Ia juga menyatakan bahwa protokol tersebut melanggar primsip protocol, misalnya dengan menduplikasi kontrol aliran yang termasuk dalam lapisan transport (TCP).Tapi,sebagian besar kekhawatiran terkait dengan masalah enkripsi.

Enkripsi HTTP/2

HTTP / 2 didefinisikan baik untuk HTTP URI yaitu tanpa enkripsi  dan untuk HTTPS URI melalui TLS menggunakan ekstensi ALPN mana  TLS 1.2 atau yang lebih baru diperlukan.

Meskipun standar itu sendiri tidak memerlukan penggunaan enkripsi,semua implementasi klien utama (Firefox,Chrome, Safari, Opera, IE, Edge) telah menyatakan bahwa mereka hanya akan mendukung HTTP / 2 melalui TLS, yang membuat enkripsi de facto ( pada kenyataannya) wajib.

Manfaat Utama HTTP/2

  • Menghemat penggunaan resources di server dan client.
  • Lebih canggih dan cepat dibanding protokol SPDY sebelumnya.Google akan menghapus SPDY support dari browser Chrome mulai awal tahun 2016.
  • Koneksi HTTPS berjalan lebih cepat dan lebih aman berkat teknologi kompresi dan enkripsi yang lebih efisien.
  • Mempercepat loading website secara signifikan dengan teknologi multiplexing, concurrency, kompresi header, dan server push (server bisa mem-push content untuk di-loading di background, seperti AJAX).
  • Memberikan kontrol lebih besar kepada developer aplikasi untuk mengatur prioritas urutan object yang mau di-load lebih dulu.

HTTP/2 Perlu SSL Atau TLS ?

Semua implementasi web server mendukung HTTP/2 bila digunkan melalui koneksi terenkripsi. Ini berarti memerlukan SSL untuk website kalian.

Apakah HTTP/2 Sudah Dapat Dipakai ?

Dapat menggunakannya pada web browser seperti versi terbaru dari Chrome, Firefox, Opera, dan web browser lain yang mendukung HTTP/2.

Hal Yang Baru Di HTTP/2

HTTP/2 didasarkan pada SPDY dan difokuskan pada peningkatan kinerja. Hal ini menawarkan perangkat tambahan, yaitu:

  • Multiplexing untuk Mempercepat Transfer Data

Solusi dari HTTP/2 ini disebut multiplexing.Ini memberikan kita cara sederhana untuk meminta dan menerima beberapa objek web pada satu waktu melalui koneksi singel.Ini solusi dari masalah head-of-line blocking,HTTP/2 menyelesaikan dengan menggunakan frame.Setiap frame berisi informasi meta data tentang permintaan atau tanggapan yang memungkinkan satu koneksi yang akan digunakan untuk pengiriman simultan tanpa menyebabkan kebingungan respon.

Berikut adalah contoh : HTTP/2 menangani 3 permintaan yang di gambarkan seperti yang dapat kalian lihat dari gambar di bawah ini:

ketika HTTP/2 digunakan untuk mengirimkan beberapa permintaan dan dapat menerima dalam urutan yang bebas. Dengan begitu, halaman memuat lebih cepat. Sebagai contoh, server membutuhkan lebih banyak permintaan kedua tetapi pengirim dari objek ketiga tidak diblokir.

  • Compression of Headers
    Perbaikan ke 2 HTTP/2 berhubungan dengan header HTTP.Client menggunakan header untuk menginformasikan server informasi apa yang dibutuhkan dan dalam format apa informasi yang dapat disampaikan.Sebagai contoh, web browser biasanya mengirimkan header untuk menginformasikan server yang mendukung data terkompresi gzip.Cookies juga dikomunikasikan melalui header dan ukuran beberapa cookie bisa sangat besar.Masalahnya adalah header tidak berubah antara permintaan. begitu juga, dengan header HTTP/1.1 harus disediakan untuk setiap permintaan, yang tentu saja sia-sia ketika header tidak berubah.Sekarang HTTP/2 tidak hanya mengirimkan header per koneksi, tetapi juga menawarkan kompresi. ini berarti bahwa halaman web yang berisi rata-rata 80-90 objek sekarang dapat dimuat lebih cepat karena web browser akan membutuhkan satu round trip untuk mengirim semua header untuk semua objek.
  • Prioritization for Proper Page Rendering
    Masalah KE 3 yang HTTP/2 pecahkan disebabkan multiplexing dan compression of header yaitu memperioritaskan objek yang lebih penting dari pada yang lain.Contoh : objek CSS untuk website harus disampaikan di awal,sehingga website dapat ditampilkan dengan benar.
    Nah, di HTTP/2 client dapat berkomunikasi dengan server dan menunjukkan prioritas untuk ojek tertentu dan dengan cara ini web server dapat membuat keputusan objek yang disampaikan terlebih dahulu kepada client.Karena protokol itu mendukung prioritas berarti developer web tidak perlu khawatir tentang perubahan yang perlu dibuat untuk aplikasi mereka. Web browser akan mengurus prioritas dan menangani aliran data dalam HTTP/2.

Keunggulan HTTP/2

Adapun keunggulan HTTP/2 dengan teknologi nya yang canggih tersebut yaitu :

  • Loading website menjadi lebih cepat.Bahkan ketika  mengakses website via mobile.
  •  Menghemat resources pada web server.

HTTP/2 membutuhkan SSL/TLS ?

Implementasi web server mendukung HTTP/2 bila digunkan melalui koneksi terenkripsi.Ini berarti kalian memerlukan SSL untu website kalian.

Cara Mengaktifkan HTTP/2 Di Web Server Apache

Apache memiliki dukungan HTTP/2 sejak versi 2.4.17. Dalam tutorial ini,kita akan menganggap kita sudah memiliki konfigurasi TLS/SSL yang sudah berfungsi.

Untuk mengaktifkan HTTP/2 di Apache harus memenuhi persyaratan berikut:

  • Pertama,harus mengaktifkan HTTPS di server.Semua browser utama memungkinkan penggunaan HTTP/2 hanya melalui HTTPS. Juga, versi protokol TLS> = 1.2 dengan suite sandi modern.
  • Pastikan menjalankan Apache 2.4.17 atau lebih baru karena HTTP/2 didukung dari versi ini dan yang lebih tinggi.
  • Pastikan klien/browser benar-benar mendukung HTTP/2.

Jika sudah memenuhi syarat di atas,Lalu agar HTTP/2 berfungsi di Apache,harus mengaktifkan dan memuat modul SSL dan HTTP/2.Untuk melakukannya,dapat menjalankan yang berikut di terminal kalian.

sudo a2enmod ssl

Kemudian

sudo a2enmod http2

Untuk mengaktifkan modul-modul baru ini,perlu menjalankan:

sudo systemctl restart apache2

Setelah mengaktifkan dan memuat modul Apache yang diperlukan,navigasikan ke direktori konfigurasi Apache  dan edit konfigurasi Apache.

Mengaktifkan HTTP/2 di server web Apache,kalian tambahkan salah satu dari berikut ini ke konfigurasi Apache global kalian atau di dalam host virtual tertentu :

Protocols h2 http/1.1

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

<VirtualHost *:443>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/public_html/example.com
SSLEngine on
SSLCertificateKeyFile /path/to/private.pem
SSLCertificateFile /path/to/cert.pem
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
Protocols h2 http/1.1
</VirtualHost>

Untuk memeriksa apakah server kalian mendukung HTTP/2,dapat menggunakan alat pengembang browser kalian.

 

Di bawah ini adalah tangkapan layar dari browser Google Chrome  yang menampilkan HTTP/2 :

 

 

Sekian artikel kali ini semoga bisa bermanfaat untuk kalian semua 🙂

Baca Juga Artikel Ini :

CARA MEMILIH NAMA DOMAIN UNTUK BISNIS

5 JENIS BLOG YANG PERLU DIKETAHUI

CARA MENINGKATKAN PENGUNJUNG BLOG

CARA BERPENGHASILAN MELALUI BLOG

PENGERTIAN PLUGIN BESERTA JENISNYA

ALASAN MENGAPA HARUS MENGGUNAKAN VPS

TIPS MENGAKSES INTERNET DENGAN AMAN

 

 

Jadilah yang pertama untuk memberi nilai
feni

Recent Posts

Ingin Membuat Website E-Commerce Yang Menarik? Perhatikan Tips Ini

Design website toko online tidak hanya soal estetika, tapi juga UX yang bagus secara keseluruhan.…

21 hours ago

Apa Saja Jenis Proyek yang Bisa Dikerjakan UX Designer? Yuk Simak Di Sini

Sebelum memulai karir Anda sebagai desainer UX, Anda harus membuat portofolio yang mencakup semua pengalaman…

2 days ago

Aktifkan Keep-Alive Untuk Meningkatkan Performa Website Anda

Keep-Alive memungkinkan browser pengunjung Anda mendownload semua konten (JavaScript, CSS, gambar, video, dll) melalui koneksi…

3 days ago

Baca Ini Untuk Pelajari Apa Saja Job Description Web Developer

Job description seorang web developer adalah membuat situs web menggunakan berbagai bahasa pemrograman. Tanggung jawab…

4 days ago

Rekomendasi Tools A/B Testing untuk Meningkatkan Conversion Rate

Secara default, WordPress tidak mendukung A/B testing. Tapi jangan khawatir. Di bawah ini, kami telah…

5 days ago

Ingin Menjadi UX Designer? Coba Pelajari Apa Saja Tugasnya!

UX design merupakan singkatan dari User Experience design atau desain pengalaman pengguna. Istilah ini sering…

7 days ago