GNU/Linux >> Belajar Linux >  >> Debian

Cara Mengatur Nginx dengan Modul Google Pagespeed di Debian 11

Modul Google Pagespeed adalah modul sumber terbuka untuk mengoptimalkan situs web Anda di bawah server web Nginx dan Apache. Modul Pagespeed adalah modul tingkat server yang dipasang bersama server web Nginx dan Apache.

Modul Pagespeed meningkatkan kinerja dan kecepatan situs web Anda dengan mengoptimalkan file statis di situs web Anda. Modul Pagespeed mengoptimalkan gambar di situs web Anda, mengecilkan file statis seperti HTML, CSS, dan JavaScript, dan mengoptimalkan cache file.

Dalam tutorial ini, kami akan menunjukkan kepada Anda bagaimana membangun modul Nginx Pagespeed pada Debian 11 Bullseye terbaru. Panduan ini dapat diterapkan pada instalasi Nginx Anda saat ini karena Anda baru saja membangun modul Nginx.

Prasyarat

Sebelum Anda mulai, pastikan Anda memiliki persyaratan berikut.

  • Sistem Operasi:Debian 11 Bullseye
  • Hak istimewa root

Sekarang mari kita mulai.

Menginstal Dependensi Paket

Pertama, Anda akan menginstal dependensi paket untuk mengkompilasi modul Nginx.

1. Jalankan perintah apt di bawah ini untuk memperbarui repositori saat ini di sistem Anda.

sudo apt update

2. Selanjutnya, instal dependensi paket dasar untuk mengkompilasi program menggunakan apt perintah di bawah ini.

sudo apt install curl dpkg-dev build-essential zlib1g-dev git libpcre3 git libpcre3-dev unzip uuid-dev -y

3. Setelah itu, instal dependensi build untuk mengkompilasi modul Nginx.

sudo apt build-dep nginx -y

Memeriksa Versi Nginx Saat Ini

Untuk membangun modul Nginx Pagespeed khusus, pastikan server web Nginx Anda saat ini menyimpan versi kode sumber Nginx yang sama yang akan Anda gunakan untuk membangun modul Nginx.

1. Jalankan perintah berikut untuk memeriksa versi Nginx.

nginx -v

Untuk contoh ini, versi Nginx yang saat ini terinstal di mesin kami adalah '1.18.0 '. Di bawah ini adalah output serupa yang akan Anda lihat.

versi nginx:nginx/1.18.0

Opsional, jika Anda tidak memiliki paket Nginx di sistem Anda, instal dari repositori resmi Debian menggunakan perintah apt di bawah ini.

sudo apt install nginx -y

2. Selanjutnya, buat variabel lingkungan sementara baru untuk versi Nginx Anda menggunakan perintah di bawah ini.

ekspor NG_VER=1.18.0

Unduh Nginx dan Kode Sumber Pagespeed

Pada langkah ini, Anda akan mengunduh kode sumber Nginx dan modul Pagespeed ke server Anda. Kode sumber Nginx ini akan memiliki versi yang sama dengan paket Nginx Anda saat ini.

1. Buat direktori proyek baru '/usr/src/nginx ' dan masuk ke dalamnya.

mkdir -p /usr/src/nginx; cd /usr/src/nginx

2. Sekarang jalankan perintah berikut untuk mengunduh kode sumber Nginx menggunakan dan mengekstraknya.

wget http://nginx.org/download/nginx-$NG_VER.tar.gz
tar -xzvf nginx-$NG_VER.tar.gz

3. Selanjutnya, clone modul Nginx Pagespeed ke direktori saat ini, dan setelah proses selesai, Anda akan melihat direktori baru 'incubator-pagespeed-ngx'.

git clone https://github.com/Apache/incubator-pagespeed-ngx.git

4. Pindah ke 'incubator-pagespeed-ngx ' dan beralih ke cabang stabil modul Nginx Pagespeed.

cd incubator-pagespeed-ngx/
git checkout stable-terbaru

5. Periksa file 'PSOL_BINARY_URL ' untuk mendapatkan tautan unduhan Perpustakaan Pengoptimalan Halaman (PSOL). Pustaka ini diperlukan untuk modul Nginx Pagespeed.

cat PSOL_BINARY_URL

Anda akan melihat output serupa seperti di bawah ini. Variabel '$BIT_SIZE_NAME ' adalah arsitektur server Anda.

wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-$BIT_SIZE_NAME.tar.gz

6. Sekarang buat variabel lingkungan sementara baru 'BIT_SIZE_NAME' dengan nilai arsitektur server Anda. Contoh di bawah ini menggunakan arsitektur server 'x64' atau 64-bit.

ekspor BIT_SIZE_NAME=x64

7. Sekarang unduh kode sumber PSOL dan ekstrak.

wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-$BIT_SIZE_NAME.tar.gz
tar -xzvf 1.13.35.2-$BIT_SIZE_NAME.tar.gz

Sekarang Anda siap membuat modul Nginx Pagespeed.

Mengkompilasi Modul Kecepatan Halaman Nginx

Pada langkah ini, Anda akan mengkompilasi modul Nginx Pagespeed. Pada akhirnya, Anda akan mendapatkan modul Nginx dengan format '.so ' yang dapat Anda terapkan ke server web Nginx Anda saat ini.

1. Ubah direktori kerja ke direktori proyek Nginx.

cd /usr/src/nginx/nginx-$NG_VER

2. Jalankan perintah berikut untuk mengkonfigurasi kompilasi modul Nginx Anda. Perintah ini juga memeriksa persyaratan sistem Anda, pastikan Anda tidak memiliki kesalahan.

./configure --with-compat --add-dynamic-module=../incubator-pagespeed-ngx

Di bawah ini adalah output yang harus Anda dapatkan.

Ringkasan konfigurasi
  + menggunakan pustaka PCRE sistem
  + Pustaka OpenSSL tidak digunakan
  + menggunakan pustaka sistem zlib

  nginx path prefix:"/usr/local /nginx"
  file biner nginx:"/usr/local/nginx/sbin/nginx"
  nginx modules path:"/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 http nginx:"/usr/local/nginx/logs/access.log"
  nginx http client request body temporary files:"client_body_temp"
  nginx http proxy temporary files:"proxy_temp"
  nginx http fastcgi temporary files:"fastcgi_temp"
  nginx http uwsgi temporary files :"uwsgi_temp"
  file sementara nginx http scgi:"scgi_temp"

3. Selanjutnya, kompilasi modul Nginx Pagespeed menggunakan perintah berikut.

membuat modul

Perintah ini akan memakan waktu, tergantung pada CPU dan memori sistem Anda.

4. Setelah proses kompilasi selesai, modul Pagespeed Anda tersedia sebagai 'objs/ngx_pagespeed.so '. Periksa modul menggunakan perintah berikut.

ls objs/ngx_pagespeed.so

Anda harus mendapatkan modul Nginx Pagespeed 'ngx_pagespeed.so ' seperti di bawah ini.

-rwxr-xr-x 1 root root 19M Des  8 21:44 objs/ngx_pagespeed.so

Menambahkan Modul Kecepatan Halaman ke Instalasi Nginx Saat Ini

Pada langkah ini, Anda akan mengimplementasikan modul Nginx Pagespeed ke instalasi Nginx Anda saat ini. Untuk melakukannya, salin modul Pagespeed 'ngx_pagespeed.so' ke direktori modul Nginx dan tambahkan konfigurasi baru untuk mengaktifkannya.

1. Salin modul 'ngx_pagespeed.so ' ke direktori modul Nginx default '/usr/share/nginx/modules '.

cp /usr/src/nginx/nginx-$NG_VER/objs/ngx_pagespeed.so /usr/share/nginx/modules

2. Buat file konfigurasi baru untuk mengaktifkan modul Pagespeedd.

nano /usr/share/nginx/modules-available/ngx-pagespeed.conf

Salin dan tempel konfigurasi berikut.

load_module modules/ngx_pagespeed.so;

Simpan konfigurasi dan keluar.

3. Aktifkan modul Pagespeed dengan membuat konfigurasi symlink 'ngx-pagespeed.conf ' ke direktori '/etc/nginx/modules-enabled/ '.

ln -s /usr/share/nginx/modules-available/ngx-pagespeed.conf /etc/nginx/modules-enabled/70-ngx-pagespeed.conf

4. Selanjutnya buat konfigurasi baru 'pagespeed.conf' pada '/etc/nginx ' direktori.

nano /etc/nginx/pagespeed.conf

Salin dan tempel konfigurasi berikut.

pagespeed on;

# Harus ada dan dapat ditulis oleh nginx. Gunakan tmpfs untuk performa terbaik.
pagespeed FileCachePath /var/ngx_pagespeed_cache;

# Pastikan permintaan untuk sumber daya yang dioptimalkan kecepatan halaman masuk ke penangan kecepatan halaman
# dan tidak ada header asing yang disetel.
lokasi ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
  add_header "" "";
}
lokasi ~ "^/pagespeed_static/" { }
lokasi ~ "^/ngx_pagespeed_beacon$" { }

Simpan konfigurasi dan keluar.

5. Selanjutnya, buat direktori baru untuk menyimpan cache Nginx Pagespeed dan pastikan direktori tersebut dapat ditulis oleh Nginx 'www-data ' pengguna.

mkdir -p /var/ngx_pagespeed_cache
chown www-data:www-data /var/ngx_pagespeed_cache

Sekarang modul Nginx Pagespeed ditambahkan ke instalasi Nginx Anda saat ini. Lanjutkan ke langkah berikutnya untuk mengaktifkannya di host virtual Anda (blok server).

Menambahkan Modul Kecepatan Halaman Nginx di Host Virtual Anda

Untuk mengaktifkan modul Pagespeed ke virtual host Anda, tambahkan konfigurasi 'pagespeed.conf' ke file konfigurasi host virtual Anda menggunakan opsi 'sertakan'.

1. Untuk contoh ini, tambahkan aktifkan modul Pagespeed ke virtual host 'default '. Edit konfigurasi '/etc/nginx/sites-available/default' menggunakan editor nano.

nano /etc/nginx/sites-available/default

Tambahkan konfigurasi 'include /etc/nginx/pagespeed.conf;' di dalam bagian 'server {...}' seperti di bawah ini.

server {

  .....
  ....

  include /etc/nginx/pagespeed.conf;
}

simpan konfigurasi dan keluar.

2. Verifikasi konfigurasi Nginx Anda dan pastikan Anda tidak mendapatkan kesalahan. Setelah itu, restart layanan Nginx untuk menerapkan konfigurasi baru.

nginx -t
sudo systemctl restart nginx

Memverifikasi Modul Kecepatan Halaman Nginx

Untuk memverifikasi penginstalan dan implementasi modul Nginx Pagespeed, Anda dapat menggunakan perintah curl untuk mendapatkan header HTTP dari server web Nginx Anda atau menggunakan elemen Inspect di browser web Anda.

1. Jalankan perintah curl di bawah ini untuk mendapatkan header HTTP dari server web Nginx Anda.

curl -I https://domain.com/

Sekarang Anda harus mendapatkan output seperti di bawah ini. Bagian header tambahan 'X-Page-Speed ' berarti modul Nginx Pagespeed diaktifkan.

HTTP/1.1 200 OK
Server:nginx/1.18.0
Tipe Konten:teks/html
Koneksi:keep-alive
Tanggal:Rab, 01 Des 2021 22:02:52 GMT
Kecepatan Halaman-X:1.13.35.2-0
Kontrol Cache:max-age=0, tanpa cache

2. Untuk memeriksa dari browser web Anda, kunjungi nama domain Anda dan klik kanan pada laman, lalu pilih 'Periksa ' menu.

Muat ulang halaman web Anda dan Anda akan melihat detail header HTTP seperti di bawah ini.

Kesimpulan

Selamat! Anda telah mempelajari cara mengkompilasi modul Nginx Pagespeed dan mengimplementasikannya ke instalasi Nginx saat ini. Anda hanya perlu memasukkan konfigurasi 'pagespeed.conf' ke konfigurasi virtual host Anda.


Debian
  1. Cara Menginstal Nginx dengan Google PageSpeed ​​di Ubuntu 20.04

  2. Cara Menginstal Ghost di Debian dengan Nginx

  3. Cara menginstal DokuWiki di Debian Wheezy dengan Nginx

  1. Cara membuat nginx dengan modul Google PageSpeed ​​di Debian 8 (Jessie)

  2. Cara Mengatur Nginx dengan Dukungan HTTP/2 di Debian 9

  3. Cara Menginstal WonderCMS dengan Nginx di Debian 11

  1. Cara Mengatur Firewall dengan UFW di Debian 10

  2. Cara Mengatur Firewall dengan UFW di Debian 9

  3. Cara Menginstal WonderCMS dengan Nginx di Debian 9