GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Mengaktifkan HTTP/2 di Apache di Ubuntu

Sejak dimulainya World Wide Web (www ), HTTP protokol telah berkembang selama bertahun-tahun untuk memberikan konten digital yang aman dan cepat melalui internet.

Versi yang paling banyak digunakan adalah HTTP 1.1 dan meskipun dikemas dengan peningkatan fitur dan pengoptimalan kinerja untuk mengatasi kekurangan versi sebelumnya, ia tidak memiliki beberapa fitur penting lainnya yang telah ditangani oleh HTTP/2 .

Apa Batasan HTTP/1.1?

HTTP/1.1 protokol penuh dengan kekurangan berikut yang membuatnya kurang ideal terutama saat menjalankan server web dengan lalu lintas tinggi:

  1. Keterlambatan dalam memuat halaman web karena header HTTP yang panjang.
  2. HTTP/1.1 hanya dapat mengirim satu permintaan untuk setiap file per koneksi TCP.
  3. Mengingat bahwa HTTP/1.1 memproses satu permintaan untuk setiap koneksi TCP, browser terpaksa mengirim banjir koneksi TCP paralel untuk memproses permintaan secara bersamaan. Hal ini menyebabkan kemacetan TCP dan akhirnya pemborosan bandwidth dan degradasi jaringan.

Masalah yang disebutkan di atas sering menyebabkan penurunan kinerja dan biaya overhead yang tinggi dalam penggunaan bandwidth. HTTP/2 muncul untuk mengatasi masalah ini dan sekarang menjadi masa depan untuk protokol HTTP.

Keuntungan Menggunakan HTTP/2

Ini menawarkan keuntungan sebagai berikut:

  1. Kompresi header yang meminimalkan permintaan klien dan dengan demikian menurunkan konsumsi bandwidth. Efek yang dihasilkan adalah kecepatan memuat halaman yang cepat.
  2. Melipatgandakan beberapa permintaan melalui satu koneksi TCP. Baik server maupun klien dapat memecah permintaan HTTP menjadi beberapa bingkai dan mengelompokkannya kembali di ujung yang lain.
  3. Kinerja web yang lebih cepat sehingga menghasilkan peringkat SEO yang lebih baik.
  4. Keamanan yang ditingkatkan karena sebagian besar browser utama memuat HTTP/2 melalui HTTPS.
  5. HTTP/2 dianggap lebih mobile-friendly berkat fitur kompresi header.

Karena itu, kami akan mengaktifkan HTTP/2 di Apache di Ubuntu 20,04 LTS dan Ubuntu 18.04 LTS .

Prasyarat:

Sebelum memulai, pastikan Anda mengaktifkan HTTPS di server web Apache sebelum mengaktifkan HTTP/2 . Ini karena semua browser web utama mendukung HTTP/2 melalui HTTPS . Saya memiliki nama domain yang menunjuk ke sebuah instance di Ubuntu 20.04 yang menjalankan server Apache diamankan menggunakan sertifikat Let's Encrypt.

Selain itu, sebaiknya Anda memiliki Apache 2.4.26 dan versi yang lebih baru untuk server produksi yang ingin beralih ke HTTP/2 .

Untuk memeriksa versi Apache Anda sedang menjalankan, jalankan perintah:

$ apache2 -v

Periksa Versi Apache di Ubuntu

Dari output tersebut, Anda dapat melihat bahwa kami menggunakan versi terbaru, yaitu Apache 2.4.41 pada saat menulis artikel ini.

Aktifkan HTTP/2 di Apache Virtual Host

Untuk memulai, konfirmasikan terlebih dahulu bahwa server web menjalankan HTTP/1.1 . Anda dapat melakukannya di browser dengan membuka bagian alat pengembang di Google chrome menggunakan Ctrl +SHIFT + I kombinasi. Klik pada ‘Jaringan ' dan cari 'Protokol ' kolom.

Konfirmasi Versi Protokol HTTP

Selanjutnya, aktifkan HTTP/2 modul di Ubuntu dengan menjalankan perintah berikut.

$ sudo a2enmod http2

Aktifkan HTTP/2 di Ubuntu

Selanjutnya, cari dan edit SSL . Anda file host virtual, jika Anda telah mengaktifkan HTTPS menggunakan Let's Encrypt , file baru dibuat dengan le-ssl.conf akhiran.

$ sudo vim /etc/apache2/sites-enabled/your-domain-name-le-ssl.conf

Masukkan direktif di bawah ini setelah <VirtualHost *:443> tag.

Protocols h2 http/1.1

Aktifkan HTTP/2 di Apache

Untuk menyimpan perubahan, mulai ulang server web Apache.

$ sudo systemctl restart apache2

Untuk memeriksa apakah HTTP/2 diaktifkan, ambil header HTTP menggunakan perintah curl berikut seperti yang ditunjukkan.

$ curl -I --http2 -s https://domain.com/ | grep HTTP

Periksa Dukungan HTTP/2 di Apache

Anda akan mendapatkan output yang ditampilkan.

HTTP/2 200

Di browser, muat ulang situs Anda. Kemudian kembali ke alat pengembang dan konfirmasikan HTTP/2 yang dilambangkan dengan h2 label pada ‘Protokol ' kolom.

Konfirmasi Versi Protokol HTTP/2

Saat Menggunakan Modul mod_php dengan Apache

Jika Anda menjalankan Apache di samping mod_php modul, Anda harus beralih ke PHP-FPM . Ini karena mod_php modul menggunakan prefork MPM modul yang tidak didukung oleh HTTP/2 . Anda perlu mencopot pemasangan MPM pre prefork dan beralih ke mpm_event modul yang akan didukung oleh HTTP/2 .

Jika Anda menggunakan PHP 7.4 mod_php modul, misalnya, nonaktifkan seperti yang ditunjukkan:

$ sudo a2dismod php7.4 

Nonaktifkan Modul mod_php

Setelah itu, nonaktifkan prefork MPM modul.

$ sudo a2dismod mpm_prefork

Nonaktifkan Prefork MPM di Apache

Setelah menonaktifkan modul, selanjutnya aktifkan Event MPM , Fast_CGI , dan setenvif modul seperti yang ditunjukkan.

$ sudo a2enmod mpm_event proxy_fcgi setenvif

Aktifkan MPM Acara di Apache

Instal PHP-FPM di Ubuntu

Selanjutnya, instal dan mulai PHP-FPM seperti yang ditunjukkan.

$ sudo apt install php7.4-fpm 
$ sudo systemctl start php7.4-fpm

Kemudian aktifkan PHP-FPM untuk memulai saat boot.

$ sudo systemctl enable php7.4-fpm

Selanjutnya, aktifkan PHP-FPM sebagai penangan PHP Apache dan mulai ulang server web Apache agar perubahan dapat diterapkan.

$ sudo a2enconf php7.4-fpm

Aktifkan Dukungan HTTP/2 di Apache Ubuntu

Kemudian aktifkan modul HTTP/2 seperti sebelumnya.

$ sudo a2enmod http2

Mulai ulang Apache untuk menyinkronkan semua perubahan.

$ sudo systemctl restart apache2

Terakhir, Anda dapat menguji apakah server Anda menggunakan HTTP/2 protokol menggunakan perintah curl seperti yang ditunjukkan.

$ curl -I --http2 -s https://domain.com/ | grep HTTP

Periksa Protokol HTTP/2 di Apache

Anda juga dapat memilih untuk menggunakan alat pengembang di Google Chrome browser untuk memverifikasi seperti yang didokumentasikan sebelumnya. Kami harus mengakhiri panduan ini, Kami harap Anda menemukan informasi yang berharga dan Anda dapat dengan nyaman mengaktifkan HTTP/2 di Apache dengan mudah.

Berbagi itu Peduli…
Berbagi di FacebookBerbagi di TwitterBerbagi di LinkedinBerbagi di Reddit
Ubuntu
  1. Ubuntu 20.04 – Bagaimana Mengaktifkan Hwe?

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

  3. Cara Mengatur Apache dengan HTTP/2 di Ubuntu 16.04

  1. Cara Menginstal Apache di Ubuntu 18.04

  2. Cara Mengaktifkan SSH di Ubuntu 18.04

  3. Cara Mengaktifkan Desktop Jarak Jauh Ubuntu

  1. Cara menginstal Apache di Ubuntu 20.04

  2. Cara Mengaktifkan Lampu Malam di Ubuntu 17.10

  3. Cara Mengaktifkan SSH di Ubuntu 20.04