Nginx adalah server web sumber terbuka dan gratis yang mendukung banyak situs di internet. Ini dapat digunakan sebagai proxy terbalik dan penyeimbang beban. Ia dikenal karena kinerja dan stabilitasnya yang tinggi.
ngx_pagespeed adalah modul Nginx open-source yang dapat digunakan untuk mengoptimalkan kinerja situs web Anda. Ini dikembangkan oleh Google dan mengurangi waktu buka halaman dan mempercepat waktu respons situs web.
Dalam tutorial ini, kami akan menunjukkan cara mengkompilasi ngx_pagespeed sebagai modul dinamis dengan Nginx di server Ubuntu 20.04.
Prasyarat
- Server yang menjalankan Ubuntu 20.04.
- Nama domain yang valid ditunjukkan dengan IP server Anda. Dalam tutorial ini, kita akan menggunakan domain example.com.
- Sandi root dikonfigurasi untuk server.
Memulai
Sebelum memulai, Anda perlu memperbarui paket sistem Anda ke versi terbaru. Anda dapat memperbaruinya dengan menjalankan perintah berikut:
apt-get update -y
Setelah semua paket diinstal, Anda perlu menginstal beberapa dependensi yang diperlukan ke sistem Anda. Anda dapat menginstal semuanya dengan perintah berikut:
apt-get install dpkg-dev build-essential zlib1g-dev libpcre3 git libpcre3-dev unzip -y
Setelah semua paket terinstal, Anda dapat melanjutkan ke langkah berikutnya.
Instal Nginx Webserver
Selanjutnya, Anda perlu menginstal server web Nginx ke sistem Anda. Anda dapat menginstalnya dengan perintah berikut:
apt-get install nginx -y
Setelah instalasi selesai, Anda dapat memverifikasi versi Nginx yang diinstal dengan perintah berikut:
nginx -v
Anda akan melihat versi Nginx di output berikut:
versi nginx:nginx/1.18.0 (Ubuntu)
Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Unduh dan Kompilasi ngx_pagespeed
Sebelum mengunduh dan mengkompilasi ngx_pagespeed. Anda perlu mengunduh sumber Nginx di sistem Anda. Anda dapat mengunduh paket sumber Nginx dengan perintah berikut:
Catatan:Pastikan versi Nginx yang diunduh akan cocok dengan versi Nginx yang diinstal. Di sini, versi Nginx yang diinstal adalah 1.18.0. Jadi, Anda perlu mengunduh sumber Nginx versi 1.18.0 dari situs web Nginx.
wget http://nginx.org/download/nginx-1.18.0.tar.gz
Setelah unduhan selesai, ekstrak file yang diunduh dengan perintah berikut:
tar -xvzf nginx-1.18.0.tar.gz
Selanjutnya, unduh sumber ngx_pagespeed dari repositori Git dengan perintah berikut:
git clone https://github.com/Apache/incubator-pagespeed-ngx.git
Setelah unduhan selesai, ubah direktori ke direktori unduhan dan periksa versi stabil dengan perintah berikut:
cd incubator-pagespeed-ngx
git checkout recent-stable
Anda akan mendapatkan output berikut:
Catatan:beralih ke 'stabil terbaru'. Anda berada dalam status 'HEAD terpisah'. Anda dapat melihat-lihat, membuat perubahan eksperimental dan mengkomitnya, dan Anda dapat membuang komit apa pun yang Anda buat dalam keadaan ini tanpa memengaruhi cabang mana pun dengan beralih kembali ke cabang. Jika Anda ingin membuat cabang baru untuk mempertahankan komit yang Anda buat, Anda dapat melakukannya ( sekarang atau nanti) dengan menggunakan -c dengan perintah switch. Contoh:git switch -cAtau batalkan operasi ini dengan:git switch -Matikan saran ini dengan menyetel saran variabel konfigurasi.detachedHead ke falseHEAD sekarang di 11ba8ea54 Perbarui PSOL_BINARY_URL
Dari output di atas, cat file "PSOL_BINARY_URL" untuk melihat URL unduhan PSOL:
cat PSOL_BINARY_URL
Anda akan mendapatkan output berikut:
https://dl.google.com/dl/page-speed/psol/1.13.35.2-$BIT_SIZE_NAME.tar.gz
Sekarang, jalankan perintah berikut untuk mengunduh PSOL menggunakan URL di atas:
wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-x64.tar.gz
Selanjutnya, ekstrak file yang diunduh dengan perintah berikut:
tar -xvzf 1.13.35.2-x64.tar.gz
Selanjutnya, ubah direktori ke sumber Nginx dan instal semua dependensi yang diperlukan dengan perintah berikut:
cd /root/nginx-1.18.0
apt-get build-dep nginx
apt-get install uuid-dev
Selanjutnya, kompilasi modul ngx_pagespeed dengan perintah berikut:
./configure --with-compat --add-dynamic-module=/root/incubator-pagespeed-ngx
Anda akan mendapatkan output berikut:
Ringkasan konfigurasi + menggunakan pustaka PCRE sistem + pustaka OpenSSL tidak digunakan + menggunakan pustaka sistem zlib Awalan jalur nginx:"/usr/local/nginx" File biner nginx:"/usr/local/nginx/sbin/nginx" nginx jalur modul:"/usr/local/nginx/modules" awalan konfigurasi nginx:"/usr/local/nginx/conf" file konfigurasi nginx:"/usr/local/nginx/conf/nginx.conf" file nginx pid:" /usr/local/nginx/logs/nginx.pid" file log kesalahan nginx:"/usr/local/nginx/logs/error.log" file log akses nginx http:"/usr/local/nginx/logs/access.log" log" nginx http client request body file sementara:"client_body_temp" nginx http proxy file sementara:"proxy_temp" nginx http fastcgi file sementara:"fastcgi_temp" nginx http file sementara uwsgi:"uwsgi_temp" nginx http file sementara scgi:"scgi_temp"Selanjutnya, jalankan perintah berikut untuk membangun modul Pagespeed:
membuat modulSelanjutnya, salin modul yang dihasilkan ke direktori modul Nginx:
cp objs/ngx_pagespeed.so /usr/share/nginx/modules/Pada titik ini, modul ngx_pagespeed dikompilasi di sistem Anda. Sekarang Anda dapat melanjutkan ke langkah berikutnya.
Konfigurasikan Nginx untuk Menggunakan Modul ngx_pagespeed
Selanjutnya, Anda perlu mengonfigurasi Nginx untuk menggunakan modul ngx_pagespeed. Pertama, edit file konfigurasi utama Nginx dan tentukan jalur modul ngx_pagespeed:
nano /etc/nginx/nginx.confTambahkan baris berikut di awal file:
load_module modules/ngx_pagespeed.so;Simpan dan tutup file setelah Anda selesai.
Selanjutnya, buat direktori untuk cache pagespeed dengan perintah berikut:
mkdir -p /var/ngx_pagespeed_cacheAtur kepemilikan yang tepat menggunakan perintah berikut:
chown -R www-data:www-data /var/ngx_pagespeed_cacheSelanjutnya, edit file konfigurasi virtual host default Nginx dan tambahkan konfigurasi kecepatan halaman:
nano /etc/nginx/sites-available/defaultMengganti semua baris dengan baris berikut:
server { dengarkan 80; nama_server contoh.com; root /var/www/html; indeks index.nginx-debian.html index.html index.htm; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; lokasi / { try_files $uri $uri/ =404; } kecepatan halaman aktif; pagespeed FileCachePath "/var/ngx_pagespeed_cache/"; kecepatan halaman RewriteLevel OptimizeForBandwidth; lokasi ~ ".pagespeed.([a-z].)?[a-z]{2}.[^.]{10}.[^.]+" { add_header "" ""; } lokasi ~ "^/pagespeed_static/" { } location ~ "^/ngx_pagespeed_beacon$" { }pagespeed RewriteLevel CoreFilters; }Simpan dan tutup file setelah Anda selesai. Kemudian, verifikasi Nginx untuk kesalahan sintaks menggunakan perintah berikut:
nginx -tAnda akan mendapatkan output berikut:
nginx:file konfigurasi /etc/nginx/nginx.conf sintaksnya oknginx:file konfigurasi /etc/nginx/nginx.conf tes berhasilTerakhir, restart layanan Nginx untuk menerapkan perubahan:
systemctl restart nginxAnda juga dapat memverifikasi status layanan Nginx menggunakan perintah berikut:
systemctl status nginxAnda akan mendapatkan output berikut:
? nginx.service - Server web berkinerja tinggi dan server proxy terbalik Dimuat:dimuat (/lib/systemd/system/nginx.service; diaktifkan; preset vendor:diaktifkan) Aktif:aktif (berjalan) sejak Kamis 26-11-2020 05 :32:23 UTC; 20 detik yang lalu Dokumen:man:nginx(8) Proses:363 ExecStartPre=/usr/sbin/nginx -t -q -g daemon aktif; master_proses aktif; (kode=keluar, status=0/SUCCESS) Proses:385 ExecStart=/usr/sbin/nginx -g daemon aktif; master_proses aktif; (kode=keluar, status=0/SUCCESS) PID Utama:386 (nginx) Tugas:3 (batas:2353) Memori:14.4M CGroup:/system.slice/nginx.service ??386 nginx:master process /usr/ sbin/nginx -g daemon aktif; master_proses aktif; ??387 nginx:proses pekerja ??388 nginx:proses pekerja 26 Nov 05:32:23 ubuntu2004 systemd[1]:Memulai server web berkinerja tinggi dan server proxy terbalik...26 Nov 05:32:23 ubuntu2004 systemd[ 1]:Memulai Server web berkinerja tinggi dan server proxy terbalik.Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.
Verifikasi Modul ngx_pagespeed
Pada titik ini, Nginx dikonfigurasi dengan dukungan ngx_pagespeed. Sekarang saatnya menguji apakah sudah terpasang atau belum.
Untuk menguji kecepatan halaman, jalankan perintah berikut dengan menentukan nama domain Anda:
curl -I -p http://example.comJika semuanya baik-baik saja, Anda akan mendapatkan output berikut:
HTTP/1.1 200 OKServer:nginx/1.18.0 (Ubuntu)Content-Type:text/htmlConnection:keep-aliveVary:Accept-EncodingDate:Wed, 25 Nov 2020 11:58:56 GMTX-Page-Speed:1,13 .35.2-0Cache-Control:max-age=0, tanpa cachePada output di atas, X-Page-Speed:1.13.35.2-0 berarti PageSpeed aktif dan mengoptimalkan situs web Anda.
Kesimpulan
Selamat! Anda telah berhasil menginstal ngx_pagespeed dengan Nginx di server Ubuntu 20.04. Saya harap modul ini akan meningkatkan kinerja server web Nginx Anda dan mempercepat situs web. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.
Cara Menginstal CouchDB di Ubuntu 20.04 Cara Menginstal Alat Pemantauan Jaringan Cacti di Ubuntu 20.04Ubuntu