Solusi irit bandwidth untuk situs web / blog

Buat rekan-rekan yang berkunjung ke blog saya, tahukah perubahan apa yang terjadi pada blog ini? Sepertinya jika dilihat dengan mata telanjang tentu tidak akan terlihat adanya perubahan.

Jika anda membaca tulisan saya di blog ini dalam mode full story, maka dapat dipastikan anda telah menerima sebuah file html yang berukuran di atas 20 KB. Ya, rata-rata tulisan saya dalam mode full story di blog ini berukuran diatas 20 KB. Konsekuensinya, jika anda menggunakan akses internet yang lambat maka file html yang berukuran 20 KB ini akan lama sekali untuk dibuka pada browser anda. Aturan ini akan berlaku terbalik jika anda memiliki koneksi internet yang cepat (banter, kalo dalam bahasa Jawanya :p), artinya semakin besar sebuah file yang diakses oleh browser, maka membutuhkan waktu yang lama pula agar file tersebut tampil di browser.


Ternyata ada cara yang dapat dilakukan untuk mempercepat akses membuka blog ini tanpa melibatkan campur tangan anda, yaitu dengan menggunakan mod_gzip. Mod_gzip (mod_gzip adalah modul apache web server versi 1.3.x sedangkan untuk versi 2.x menggunakan mod_deflate) merupakan salah satu modul dari Apache web server yang berfungsi untuk mengkompresi halaman yang diakses dan dikirimkan ke browser anda. Artinya setiap halaman yang anda akses akan di kompress terlebih dahulu di web server baru kemudian ditransfer ke browser anda dan selanjutnya browser mengekstrak paket data yang diterima menjadi sebuah tampilan seperti yang anda lihat pada saat membaca tulisan ini. Sebagai contoh, misalnya anda membuka salah satu tulisan saya dalam mode full story, maka mod_gzip akan mengkompress halaman tersebut terlebih dahulu baru kemudian dikirimkan ke browser anda. Keuntungan yang didapat dari kompresi ini adalah ukuran halaman / file menjadi lebih kecil sehingga sangat cepat untuk dibuka browser pengunjung.

Selain mod_gzip yang merupakan modul dari Apache web server ternyata PHP juga memiliki fungsi handler gzip. Nah, berhubung engine blog yang saya gunakan berbasis PHP, maka saat inipun saya telah menambahkan satu baris fungsi handler gzip pada index.php seperti dibawah ini:

     <? ob_start(“ob_gzhandler”); ?>

Fungsi ini saya letakkan pada baris pertama halaman index.php, jadi jika anda mengakses salah satu halaman di blog ini, sebenarnya halaman yang anda akses sudah terkompresi dan mudah-mudahan akan cepat tampil di browser yang sekarang ini sedang anda gunakan :p. Hal ini akan menguntungkan pengunjung blog karena tidak perlu lama menunggu ketika membuka masing-masing halaman dan hal inipun juga menguntungkan saya selaku pemilik blog karena dapat mengirit jatah bandwidth bulanan dari web hosting :)).

http://www.whatsmyip.org/mod_gzip_test memberikan sebuah layanan gratis untuk memberitahu apakah situs anda sudah di kompresi atau belum. Anda cukup memasukkan alamat situs web / blog yang ingin anda ketahui ukuran filenya. Dibawah ini statistik http://dgk.or.id/index.php setelah dilakukan penambahan fungsi handler gzip.

     http://dgk.or.id/index.php is gzipped
     Original Size: 20 K
     Gzipped Size: 6 K
     Data Savings: 70%

Terlihat bukan? jika http://dgk.or.id tidak menggunakan metode gzip, maka anda sebenarnya membuka sebuah halaman yang berukuran 20 KB. Namun setelah di tambahkan fungsi handler gzip maka hanya berukuran 6 KB. Ini artinya menghemat 70%. So, jika dikembalikan ke pertanyaan saya di paragraf awal, seharusnya sekarang ini situs saya dapat diakses lebih cepat dari yang lalu-lalu :)).

Nah, saran saya, jika blog anda sangat banyak pengunjungnya cobalah trik ini, mungkin saja akan kerasa khasiatnya :). (Asumsi saya anda sebagai pemilik blog dapat mengedit file index.php dan file lainnya. Selain itu web hosting yang anda gunakan mengaktifkan fungsi handler gzip pada php-nya dan perlu dicatat bahwa engine blog/CMS yang anda gunakan harus berbasis php)

36 thoughts on “Solusi irit bandwidth untuk situs web / blog

  1. #1: kalo pake modul mod_gzip dari apache memang kita harus punya akses ke server untuk edit httpd.conf, tapi dengan fungsi handler gzip dari php kita gak perlu ngutak-ngatik server namun cukup menambahkan satu baris fungsi handler gzip pada baris teratas untuk masing-masing halaman (Seperti pada contoh saya di atas).

    Lha kalo yang itu kan bisa dilakukan dengan upload dan download pake ftp biasa?

  2. apache 2.0 sudah built-in mod_deflate, fungsinya sama dengan mod_gzip, tapi faktor kompresinya masih lebih baik mod_gzip, alasan pakai mod_deflate kemungkinan adalah soal lisensi.

    untuk nyalain kompresi pakai zlib di php, lebih gampang nyalain zlib.output_compression di php.ini, gak perlu edit2 file php-nya

    tapi, jangan nyalain kompresi di php dan di apache, kalau 22nya dinyalain, outputnya bakalan kacau 🙂

  3. hmmmm… mod_gzip test di whatsmyip.org agak aneh… priyadi.net dibilang gak di-gzip, tapi dgk.or.id jalan… tapi gua cek pake ‘GET -ed -H “Accept-Encoding: gzip” http://priyadi.net‘ bener di-gzip. ditest pake firefox juga bener digzip (ukurannya cuma 14KB, bukan 67-an KB). kenapa ya…

  4. rekuwess
    tutornya ms access aja
    buwat billing (plus search engine) persewaan CD nech.
    “agak sederhana” memang rekuwesku.
    tapi simple but professional kata orang sono 😀

  5. #4: kalo nyalain zlib atau mod_gzip di sisi server ya bener kata jaim, kita harus punya akses ke server untuk edit httpd.conf atau php.ini. Ini yang susah kalo kita cuman pake web hosting. Makanya saya pake fungsi handler gzip dari php. Saya juga baca-baca ternyata memang kalo di idupin fungsi ini di apache dan php akan kacau output yang keluar.

    #5, 6: keliatannya itu cuman ngecek dari fungsi handler gzip php aja (ob_gzhandler), jadi kalo settingnya ada di apache/httpd.conf atau php.ini akan diabaikan sama dia.

  6. #4: ups, kelupaan kayaknya ada setting buat php.ini dan httpd.conf gak perlu editing yang global, tapi bisa kita bikin sendiri trus nanti kita upload dan diletakkan di home direktori, tapi seinget saya kita tetep harus edit masing-masing filenya. CMIIW

  7. #7: lha programnya apa namanya?, kalo ada programnya sih bisa aja dibikinin tutornya, tapi kalo disuruh bikin programnya kasih ke jaim aja, dijamin beres yang penting ada angpauwnya. Hehehehe

  8. blogspot gak bisa khan ? harus situs yang support apache ..?? coba blogspot bisa ya ….

    ps : maxell, bondo le .. ojo njauk njauk ae ..

  9. #11: blogspot gak bisa sebab dia hanya menyediakan fasilitas edit template. Mungkin blogsome.com atau blogthing.com bisa kali ya? sebab dia kan pake wordpress yang based on php

    #12: thanks untuk link tune up firefoxnya, tapi saya belum coba.

  10. mas, saya masih pemula nih soal PHP…
    Jujur aja, saya masih bingung baca tulisan diatas, ngejelimet, hehe.
    Biar simple dan mudah dimengerti oleh pemula yang barusan beli hosting paket murah seperti saya ini, Langkah2 apa aja yang harus saya lakukan supaya site saya terkompress ?

    oya,
    dimana saya harus melatakkan fungsi ini() kalau saya memakai CMS WordPress ?
    Mas bilang di index ? index mana yah? index di template atau index di home direktori ?
    Makasih banyak atas jawabannya..

  11. MAs saya mau tanya nech… Saya sudah pasang script tersebut di blog saya tepatnya di header.php baris pertama, jalan memang.. namun ada yang tidak beres… Plugins SEO All In one saya gak mau bekerja.. apa ada yang salah dengan Blog saya???? Mohon pencerahannnya…

  12. test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test test

Leave a Reply

Your email address will not be published. Required fields are marked *

This is not spam