Cara Memasang Nginx dengan Modul PageSpeed di Ubuntu 20.04 LTS
Hai, selamat datang di ChotibulStudio. Di artikel ini, saya ingin membahas cara memasang Nginx dengan modul PageSpeed di Ubuntu 20.04 LTS. Dengan menambahkan modul PageSpeed pada Nginx, diharapkan situs web Anda dapat bekerja lebih optimal lagi.
Seberapa optimal sih situs yang dijalankan dengan tambahan modul PageSpeed pada Nginx? Bukannya Nginx juga sudah ringan?
Karena saya sendiri baru mencoba memasang Nginx dengan modul PageSpeed di mesin virtual, tampaknya saya tidak bisa menjawab pertanyaan-pertanyaan di atas. Mungkin saya akan membahasnya dilain kesempatan.
Jadi, di artikel ini, saya ingin fokus mencatat cara memasang Nginx dengan modul PageSpeed di Ubuntu 20.04 LTS. Mari kita mulai dengan mengenal apa itu PageSpeed.
Apa itu PageSpeed?
PageSpeed merupakan sebuah modul web server bersumber kode terbuka yang dibuat oleh Google untuk mengoptimalkan situs Anda secara otomatis. Modul PageSpeed tersedia untuk dua layanan web server populer, yaitu Apache (mod_pagespeed) dan Nginx (ngx_pagespeed).
Menurut optiweb.com, PageSpeed dapat melakukan beberapa hal berikut:
- Mengoptimalkan gambar.
- Memperkecil HTML.
- Mengecilkan dan menggabungkan CSS dan JavaScript.
- Mengoptimalkan berkas caching.
- Menggabungkan dan mengoptimalkan eksternal JavaScrript.
- Dan masih banyak yang lainnya.
Langkah-langkah memasang Nginx dengan modul PageSpeed
Pasang Nginx
Langkah pertama adalah memasang Nginx. Untuk proses pemasangannya, kita akan menggunakan arsip paket personal atau PPA Nginx yang dipelihara oleh Ondrej Sury.
$ sudo add-apt-repository ppa:ondrej/nginx-mainline
Pasang Nginx dengan perintah berikut.
$ sudo apt install nginx nginx-{core,common,full}
Setelah proses pemasangan Nginx selesai, ubah pengaturan repositori Nginx agar dapat mengunduh kode sumber.
$ sudo nano /etc/apt/sources.list.d/ondrej-ubuntu-nginx-mainline-focal.list
Hapus tanda pagar (#) yang ada dibagian baris deb-src
.
deb http://ppa.launchpad.net/ondrej/nginx-mainline/ubuntu focal main
deb-src http://ppa.launchpad.net/ondrej/nginx-mainline/ubuntu focal main
Dengan menghilangkan tanda pagar atau komentar di baris deb-src
, Anda bisa mengunduh kode sumber dari paket tertenu. Pada studi kasus ini, kita memerlukan kode sumber Nginx untuk menyusun kembali Nginx dengan paket modul PageSpeed.
Simpan konfigurasi lalu lakukan pembaruan pada daftar paket.
$ sudo apt update
Sekarang, silahkan periksa opsi konfigurasi Nginx. Pastikan disana terdapat opsi konfigurasi --with-compat
. Anda memerlukannya nanti, untuk mengaktifkan kompatibilitas modul dinamis. Gunakan perintah berikut.
$ nginx -V
Opsi konfiguasi Nginx |
Sampai langkah ini, Anda sudah memasang Nginx yang sudah mendukung opsi konfigurasi --with-compat
. Selanjutnya, Anda membutuhkan kode sumber Nginx untuk membangun dependensi yang diperlukan untuk menyusun modul PageSpeed.
Sebelum mengunduh kode sumber Nginx, Anda perlu membuat direktori khusus bernama nginx
di /usr/local/src/
. Direktori tersebut akan kita gunakan untuk menyimpan kode sumber Nginx.
$ sudo mkdir -p /usr/local/src/nginx
Ubah ke direktori sumber Nginx.
$ cd /usr/local/src/nginx
Pasang alat pengembangan pake Debian beserta kode sumber Nginx.
$ sudo apt install dpkg-dev
$ sudo apt source nginx
Periksa paket kode sumber yang telah diunduh.
$ ls /usr/local/src/nginx
Hasil unduhan kode sumber Nginx |
Unduh dan pasang paket sumber ngx_pagespeed
Paket sumber PageSpeed untuk Nginx bernama ngx_pagespeed
. Paket tersebut dapat diunduh melalui Git. Buat Anda yang belum memasang Git, Anda bisa memasangnya dengan perintah berikut.
$ sudo apt install git
Paket sumber ngx_pagespeed
akan kita simpan di /usr/local/src/
, jika Anda sebelumnya sudah berada di direktori /usr/local/src/nginx/
, gunakan perintah berikut untuk beralih ke /usr/local/src/
.
$ cd ..
Jika Anda berada di direktori home, Anda cukup menavigasikan perintah cd ke direktori yang dimaksud.
$ cd /usr/local/src/
Klon paket sumber ngx_pagespeed
dari repositori Git.
$ sudo git clone https://github.com/apache/incubator-pagespeed-ngx.git
Setelah proses klon selesai, silahkan masuk ke direktori incubator-pagespeed-ngx
.
$ cd incubator-pagespeed-ngx
Gunakan cabang latest-stable.
$ sudo git checkout latest-stable
Kita masih membutuhkan satu paket lagi. Paket tersebut bernama Pustaka Pengoptimalan PageSpeed atau PSOL. Untuk mengetahui URL unduhan paket tersebut, Anda bisa melihat isi dari berkas PSOL_BINARY_URL
.
$ cat PSOL_BINARY_URL
https://dl.google.com/dl/page-speed/psol/1.13.35.2-$BIT_SIZE_NAME.tar.gz
Unduh paket PSOL dengan perintah berikut dan ubah bagian $BIT_SIZE_NAME
-nya menjadi x64
. Sesuai bit arsitektur Ubuntu 20.04 LTS, yaitu 64-bit.
$ sudo wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-x64.tar.gz
Ekstrak arsip berkas paket PSOL yang baru saja diunduh.
$ sudo tar xvf 1.13.35.2-x64.tar.gz
Sampai langkah ini, semua paket yang dibutuhkan sudah tersedia di mesin Anda. Langkah berikutnya adalah menyusun modul ngx_pagespeed
.
Untuk penyusunan modul ngx_pagespeed
, Silahkan masuk ke direktori kode sumber Nginx. Saya asumsikan, Anda masih berada di direktori incubator-pagespeed-ngx
.
$ cd ../nginx/nginx-1.19.5/
Pasang dependensi untuk membangun Nginx.
$ sudo apt build-dep nginx
$ sudo apt install uuid-dev
Sesuai dengan acuan tutorial yang akan saya sebutkan di bagian referensi, Anda tidak perlu menyusun Nginx, melainkan hanya menyusun modul PageSpeed-nya saja. Dengan memanfaatkan opsi konfigurasi --with-compat
, kita bisa membuat modul PageSpeed kompatibel dengan binary Nginx yang sudah ada.
Sekarang, lakukan konfigurasi lingkungan modul dinamis dengan perintah berikut.
$ sudo ./configure --with-compat --add-dynamic-module=/usr/local/src/incubator-pagespeed-ngx
Berikutnya, bangun modul PageSpeed saja dengan perintah berikut ini.
$ sudo make modules
Perintah di atas memerlukan waktu beberapa saat sampai proses pembuatan modul selesai. Modul PageSpeed yang selesai dibuat akan disimpan di objs/ngx_pagespeed.so
, silahan salin modul tersebut ke /usr/share/nginx/modules
.
$ sudo cp objs/ngx_pagespeed.so /usr/share/nginx/modules/
Konfigurasi Nginx untuk memuat modul ngx_pagespeed
Kita memasuki tahap akhir dari rangkaian tutorial cara memasang Nginx dengan modul PageSpeed di Ubuntu 20.04 LTS.
Agar modul ngx_pagespeed
dapat dibaca oleh Nginx, Anda harus memuatnya di konfigurasi global Nginx dan mengaktifkan penggunaan PageSpeed di konfigurasi blok server.
Bagi Anda yang masih awam dengan Nginx, perlu Anda ketahui bahwa konfigurasi global Nginx terletak pada berkas nginx.conf. Sedangkan untuk konfigurasi blok server berada di direktori sites-available. Menurut saya seperti itu. CMIIW.
Pertama-tama, kita muat modul ngx_pagespeed di konfigurasi global Nginx. Eksekusi perintah berikut.
$ sudo nano /etc/nginx/nginx.conf
Pada permualaan konfigurasi, tambahkan baris berikut ini.
# Muat modul ngx_pagespeed
load_module modules/ngx_pagespeed.so;
Simpan konfigurasi yang sudah Anda buat.
Kedua, untuk mengaktifkan penggunaan PageSpeed, Anda perlu beberapa baris konfigurasi pada blok server. Namun, sebelum Anda mulai mengaktifkan penggunaan PageSpeed, Anda perlu mengkonfigurasi direktori cache PageSpeed.
Eksekusi perintah berikut.
$ sudo mkdir -p /var/ngx_pagespeed_cache
Ubah hak kepemilikan direktori ngix_pagespeed_cache
ke Nginx.
$ sudo chown -R www-data:www-data /var/ngx_pagespeed_cache
Setelah Anda selesai menyiapkan direktori cache PageSpeed, sekarang Anda bisa mengaktifkan penggunaan PageSpeed pada server blok situs Anda. Eksekusi perintah berikut.
$ sudo nano /etc/nginx/sites-available/mysite.tld
Tambahkan baris konfigurasi berikut tepat dibawah subblok deny access to .htaccess dan tepat di atas simbol penutup blok server ("}").
...
# Pagespeed Configuration
#
pagespeed on;
pagespeed FileCachePath /var/ngx_pagspeed_cache/;
pagespeed RewriteLevel OptimizeForBandwidth;
location ~ ".pagespeed.([a-z].)?[a-z]{2}.[^.]{10}.[^.]+"{
add_header "" "";
}
location ~ "^/pagespeed_static/" {}
location ~ "^/ngx_pagespeed_beacon$" {}
pagespeed RewriteLevel CoreFilters;
...
Simpan konfigurasi yang sudah Anda buat. Eksekusi perintah berikut untuk memeriksa salah ketik.
$ sudo nginx -t
Jika pemeriksaan sintaksis konfigurasi sukses, berarti tidak ada salah ketik di konfiguras. Lanjutkan dengan memuat ulang layanan Nginx.
$ sudo systemctl restart nginx
Sampai langkah ini, instalasi dan konfigurasi Nginx dengan modul ngx_pagespeed
telah selesai.
Uji coba hasil instalasi dan konfigurasi PageSpeed
Untuk memeriksa apakah modul ngx_pagespeed
bekerja dengan baik, Anda bisa melakukan salah satu dari dua cara berikut.
1. Pengujian melalui Terminal
Ini salah satu cara paling gampang. Anda hanya memerlukan satu paket yang bernama cURL. Jika Anda belum memasang paket tersebut, Anda bisa memasangnya dengan perintah berikut.
$ sudo apt install curl
Untuk melakuan pengujian dengan bantuan cURL, Anda tinggal mengeksekusi perintah berikut.
$ curl -I -p http://domainanda.tld
atau
$ curl -I -p 192.168.1.1
Hasil pengujian dari pemasangan Nginx dengan modul PageSpeed dengan cURL |
2. Pengujian melalui peramban web
Pengujian melalui peramban web bisa dilakukan dengan menambah ekstensi. Hanya saja, setahu saya, ekstensi ini hanya berjalan di Chrome saja.
Nama ekstensi tersebut adalah Wappalyzer. Anda bisa memasang ekstensi tersebut melalui Chrome web store.
Setelah Wapplyzer terpasang, Anda tinggal mengaktifkannya saja.
Untuk mulai memeriksa apakah modul ngx_pagespeed sudah berjalan dengan baik, berikut langkah-langkahnya.
- Ketikkan domain atau alamat ip server Anda di bilah alamat Chrome.
- Klik ikon Wapplyzer. Wapplyzer akan menampilkan semua informasi yang digunakan oleh situs.
Hasil pengujian dari pemasangan Nginx dengan modul PageSpeed dengan Wapplyzer |
Sumber
How to Install PageSpeed Module with Nginx on Ubuntu 20.04, Ubuntu 18.04, tersedia daring di https://www.linuxbabe.com/nginx/compile-the-latest-nginx-with-ngx_pagespeed-module-on-ubuntu
Komentar
Posting Komentar
Silahkan tinggalkan komentar Anda di sini.