Menampilkan halaman website (webpage) melibatkan browser yang digunakan user dan web server yang dipakai oleh website (blog). Lakukan setting Gzip encoding file index website (/index.html) menjadi file ZIP (/index.html.zip) - tindakan ini juga disebut sebagai compress file index.html menjadi file ZIP - untuk mempercepat loading time dan menghemat bandwidth.
Mekanisme browser menampilkan halaman website
Saat membuka halaman website (blog), sebenarnya Anda meminta browser (e.g. Google Chrome / Firefox) untuk menampilkan file /index.html (merupakan heavy file karena ukuran file index ini relatif besar). Sebelum menampilkan file index, browser harus request file /index.html ke web server (yang digunakan oleh website Anda) agar mengirim file /index.html tersebut.
Terkait setting G-Zip Encoding untuk mempercepat loading halaman web dan untuk memperbaiki SEO (Search Engine Optimization), kerjasama Server dan Browser punya rumus simpel, yaitu :
Smaller file = faster download = happy user.
Kita dapat mengatur setting web server dengan mengubah heavy file /index.html (yang size nya terlalu besar) ke file ZIP. Jika web server bisa mengirim file zip ke browser (index.html.zip), MAKA akan hemat bandwidth dan download time. Artinya browser bisa lakukan download file zip, mengekstrak, menunjukkan ke user browser dan kemudian memuat webpage tersebut lebih cepat.
Percakapan antara Browser dengan Web Server saat request file /index.html yang dikompresss (diubah ke file ZIP) kurang lebihnya terlihat seperti ini :
- BROWSER :
Hei! Bisakah saya dapatkan /index.html? Saya ingin versi compres jika Anda bisa lakukan. - SERVER :
Coba saya lihat. Yup! Ini dia. Anda ingin compressed version? Ini dia, keren!. - SERVER :
Saya temukan /index.html. Saya akan menjadikannya file zip dan mengirimkannya ke Anda. - BROWSER :
Great! Bagus!
Ukuran file zip menjadi hanya 10KB. Saya akan unzip dan menunjukkannya ke user saya.
Bagaimana Cara Setting G-Zip Encoding website?
Sebagai USER, kita tidak bisa mengkontrol Browser, namun user bisa mengkonfigurasi Web Server terkait content file ZIP, sehingga browser mempercepat speed loading dan menghemat bandwidth untuk semua orang. Hasilnya website blog memberi rasa senang dan good user experience.
Jika pakai Web Server IIS, Anda perlu mengaktifkan kompresi dalam pengaturan.
- Pengguna Web Server Apache memungkinkan kompresi output cukup mudah. Tambahkan baris berikut ke file .htaccess dalam web server Anda :
# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
# Or, compress certain file types by extension:
<files *.html>
SetOutputFilter DEFLATE
</files>
Web Server Apache memiliki 2 opsi metode kompresi HTTP :
- mod_deflate, opsi set up standard yang lebih mudah.
- mod_gzip, opsi lebih powerful: Anda dapat melakukan pre-compress content.
Dibandingkan dengan mod_deflate, mod_gzip memberikan rasio kompresi HTTP yang lebih besar. Artinya mod_gzip lebih baik daripada mod_deflate.
Mod_gzip secara otomatis bekerja pada server apache. Mod_gzip menghemat bandwidth dengan cara mengkompresi bodi respon HTTP sebelum dikirimkan ke BROWSER. Rata-rata browser modern bisa membaca respon yang terkompresi. Perbandingan jumlah request teks (HTML, txt, js, css) dan gambar (gif, jpg, swf) untuk sebuah situs tipikal adalah 1:1 hingga 1:3, dan gzip dapat mengkompresi teks hingga 50%-80%. Maka pengiritan trafik outgoing web yang diperoleh rata-rata bisa berkisar antara 10%–35%. Dan total penghematan bandwidth yang diperoleh antara 4%–15%.
Agar deflate (perampingan) heavy file /index.html berlangsung cepat dan bekerja, gunakan opsi mod_gzip. Apache juga memeriksa apakah browser mengirimkan "Accept-encoding" header dan mengembalikan versi kompresi ataupun versi reguler dari file.
Bagaimana jika kita tidak dapat mengubah (memodifikasi) file .htaccess?
Jika tidak dapat mengubah file htaccess., Anda dapat menggunakan PHP. Gunakan PHP untuk mengembalikan compressed content. Berikan file HTML dengan .php extension, dengan menambahkan kode berikut di bagian atas file HTML :
<?php if (substr_count($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip')) ob_start("ob_gzhandler"); else ob_start(); ?>
Syarat untuk bisa pakai metode kompresi HTTP di atas adalah browser dan server harus support. Khusus untuk mod_gzip, PHP yang digunakan harus versi 4.0.6 hingga terbaru.
Cara periksa versi PHP di website server
Cara mengetahui versi PHP pada server yang kita gunakan, silahkan buat file php (contoh: info.php), kemudian ketikkan kode berikut:<?php
phpinfo ();
?>
phpinfo ();
?>
Kemudian SAVE dan uploadlah file tersebut ke root direktori Wordpress. Buka file tersebut melalui browser yang kita gunakan. Contoh: http://nama-domain.com/info.php. Disini akan kita lihat informasi lengkap PHP yang ada di server dan bisa mencari fitur-fitur yang terintegrasi di dalamnya.
Verify Your Compressed file of website
Setelah mengkonfigurasi web server, lakukan cek ulang untuk memastikan ada compressed content.- Online : GUNAKAN online gzip test untuk memeriksa apakah halaman web Anda telah compressed.
- Pada browser : GUNAKAN Web Developer Toolbar >> Information >> View Document Size UNTUK melihat apakah halaman web Anda telah compressed.
- View the headers : GUNAKAN Live HTTP Headers UNTUK memeriksa response. Carilah baris yang berisi frase "Content-encoding: gzip".
Contoh pengkompressan file website
Untuk dicoba, bukalah downloadable example:- index.html - No explicit compression (pada server ini digunakan compression by default ).
- index.htm - Explicitly compressed with Apache. File .htaccess menggunakan .htm sebagai rule
- index.php - Explicitly compressed using the PHP header
Jangan ragu download contoh2 file di atas. Tempatkan mereka di server Anda dan tweak pengaturan.
PERINGATAN
HTTP Compression tidak selalu bekerja baik karena masalah :
- Older browsers sering trouble terkait dengan compressed content.
- Already-compressed content
Image, musik dan video telah compressed. Jangan buang waktu untuk kompres. Anda HANYA PERLU COMPRESS “THE BIG 3” (HTML, CSS and Javascript). - CPU-load
Kompres content mempersingkat CPU time dan hemat bandwidth. Biasanya ini menjadi tradeoff besar mengingat kecepatan kompresi. Ada cara untuk pra-kompres content statis dan mengirimkan versi terkompresi. Ini memerlukan konfigurasi lebih. Gunakan siklus CPU untuk pengalaman user lebih cepat, mengingat rentang perhatian yang pendek di web.
Related Post : Mengatur G-Zip Encoding untuk percepat Speed Loading
Source : How To Optimize Your Site With GZIP Compression
That's all we know