Cara Install Pagespeed di Nginx - NimeTech.com

Jul 25, 2019 Hosting

Cara Install Pagespeed di NGINX [how to]

Apa itu Pagespeed

Google Pagespeed atau yang lebih dikenal sebagai Pagespeed merupakan sebuah modul untuk NGINX dan Apache yang berfungsi untuk mengoptimasi kinerja sebuah halaman website. Optimasi yang dijalankan adalah dengan minify file static seperti HTML, CSS dan Javascript yang mana dampaknya akan menurunkan page load time halaman websitenya. Pada artikel kali ini akan membahas bagaimana Cara Install Pagespeed di Nginx.

Untuk menginstall Pagespeed di NGINX terdapat 2 cara yaitu pertama dengan melakukan instalasi pada NGINX yang sudah ada (reinstall) dan menambahkan modul Pagespeed dan kedua dengan fresh install dari source code dan menambahkan modul Pagespeednya. Untuk di artikel Cara Install Pagespeed di NGINX ini akan menggunakan cara pertama yang lebih simpel. Berikut ini langkah-langkah installasinya.

Cara Install Pagespeed di NGINX

  1. Install Dependency NGINX

Sebelum melakukan installasi Pagespeed, kalian perlu melakukan instalasi package dependency Pagespeednya dengan menggunakan command berikut ini :

yum install openssl-devel libxslt-devel perl-devel perl-ExtUtils-Embed gd-devel geoip geoip-devel gperftools-devel
  1. Download & Install Pagespeed

Jika dependencynya sudah terinstall semua, lanjut untuk download script install pagespeed dan menjalankan installasinya dengan command berikut ini :

bash <(curl -f -L -sS https://ngxpagespeed.com/install) --nginx-version latest

Setelah menjalankan command tersebut akan muncul proses installasinya kurang lebih seperti ini :

Detected redhat-based distro.
Detected that we're missing the following depencencies:
  gcc-c++ unzip libuuid-devel 
Installing them:
  1. Additional Konfigurasi

Saat proses installasi berjalan di tengah-tengah prosesnya akan muncul untuk menambahkan konfigurasi tambahan, untuk tampilannya akan muncul kurang lebih seperti berikut ini.

Extracting nginx...
About to build nginx.  Do you have any additional ./configure
arguments you would like to set?  For example, if you would like
to build nginx with https support give --with-http_ssl_module
If you don't have any, just press enter.
>

Pada bagian setelah tanda > kalian bisa tambahkan konfigurasi tambahannya dengan command konfigurasi berikut ini :

--prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_auth_request_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-google_perftools_module --with-debug 

Setelah kalian input konfigurasi diatas dan tekan Enter maka proses installasi akan berlanjut dan akan menampilkan tampilan Configuration summary seperti berikut ini :

Configuration summary
  + using system PCRE library
  + using system OpenSSL library
  + using system zlib library

  nginx path prefix: "/etc/nginx"
  nginx binary file: "/usr/sbin/nginx"
  nginx modules path: "/usr/lib/nginx/modules"
  nginx configuration prefix: "/etc/nginx"
  nginx configuration file: "/etc/nginx/nginx.conf"
  nginx pid file: "/var/run/nginx.pid"
  nginx error log file: "/var/log/nginx/error.log"
  nginx http access log file: "/var/log/nginx/access.log"
  nginx http client request body temporary files: "/var/cache/nginx/client_temp"
  nginx http proxy temporary files: "/var/cache/nginx/proxy_temp"
  nginx http fastcgi temporary files: "/var/cache/nginx/fastcgi_temp"
  nginx http uwsgi temporary files: "/var/cache/nginx/uwsgi_temp"
  nginx http scgi temporary files: "/var/cache/nginx/scgi_temp"

Build nginx? [Y/n] Y

Silakan kalian input Y dan tekan Enter untuk melanjutkan proses installasinya sampai selesai.

Jika sudah selesai proses installasi akan muncul tampilan kurang lebih seperti ini :

Nginx installed with ngx_pagespeed support compiled-in.

If this is a new installation you probably need an init script to
manage starting and stopping the nginx service.  See:
  http://wiki.nginx.org/InitScripts

You'll also need to configure ngx_pagespeed if you haven't yet:
  https://developers.google.com/speed/pagespeed/module/configuration
  1. Konfigurasi Pagespeed di virtualhost

Untuk mengaktifkan Pagespeed, kalian perlu menambahkan konfigurasi Pagespeed pada virtualhostnya. Sebelum menambahkan konfigurasi Pagespeed ke virtualhost kalian perlu buat folder cache untuk pagespeed dengan command berikut ini :

mkdir /var/cache/ngx_pagespeed/
chown nginx:nginx /var/cache/ngx_pagespeed/

Lalu, barulah kalian bisa menambahkan konfigurasi pagespeed di virtualhost dengan command berikut ini :

vim /etc/nginx/conf.d/namadomain.conf

Tambahkan beberapa baris konfigurasi pagespeed berikut ini ke dalam blok virtualhost kalian :

server {
    ...
    
    pagespeed on;
    pagespeed FileCachePath "/var/cache/ngx_pagespeed/";
    pagespeed RewriteLevel OptimizeForBandwidth;

    location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" {
        add_header "" "";
        }

    location ~ "^/pagespeed_static/" { }
    location ~ "^/ngx_pagespeed_beacon$" { }
    
    ...
}

Terakhir cek konfigurasi virtualhostnya dengan command :

nginx -t

Jika tidak ada pesan error yang muncul kalian bisa restart dahulu service nginx dengan command :

systemctl restart nginx
  1. Pengujian

Jika konfigurasinya telah sesuai dengan yang diatas maka untuk pengujian atau pengecekannya kalian bisa cek melalui command berikut ini :

curl -I https://icinga.nimetech.com/icingaweb2

Dan hasilnya nanti akan muncul kurang lebih akan seperti berikut ini :

HTTP/1.1 302 Moved Temporarily
Server: nginx/1.17.1
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
X-Powered-By: PHP/7.2.19
Location: /icingaweb2/authentication/login
Date: Thu, 04 Jul 2019 09:50:28 GMT
X-Page-Speed: 1.13.35.2-0
Cache-Control: max-age=0, no-cache

Atau kalian bisa cek melalui akses url websitenya dan cek di Inspect Element > Network pilih nama file index atau nama file websitenya seperti gambar dibawah ini.

Cara Install Pagespeed di NGINX - NimeTech.com

Kesimpulan

Cara Install Pagespeed di NGINX merupakan salah satu langkah optimasi pada web server dan website. Yang mana dampaknya akan mengurangi page load time website dan tentunya juga mengurangi penggunaan resource pada server. Pagespeed ini juga meningkatkan perfomance website, semakin kecil page load time maka semakin lama user akan mengakses/mengunjungi website kalian.

Dalam optimasi tentunya tidak hanya menambahkan pagespeed pada web server ada beberapa konfigurasi yang harus ditambahkan agar website memiliki perfomance bagus. di NimeTech.com dalam layanan Jasa Manage VPS kami memberikan opsi untuk optimasi web server.