One word to describe this release: “excellent”. I love the User Interface (UI) administration theme, the tone color, layout and a touch of AJAX on some functions, for example editing permalink.
The UI design is almost similar with Drupal style: some item can be collapsed or expanded to save some rooms. So when using this release, [...]

more »

HTTP compression

Posted on: January 21, 2005
Tags:

Buat web developer atau yang berminat ingin mempercepat loading halaman, ada tips menarik berikut ini (untuk PHP saja). Tips ini membahas tentang HTTP compression. Buat pemula, jangan takut, gampang kok :)
Sedikit teori (bila Anda sudah tahu apa itu HTTP compression, bisa melewati bagian ini)

Aplikasi web yang dibuat pakai CMS gratisan seperti PHP-Nuke, Post-Nuke, Mambo OpenSource dll atau weblog seperti wordpress dll biasanya memuat banyak karakter/huruf. Pada saat halaman diakses dokumen HTML ditransfer dari server ke client. Kalo Anda merasa lambat saat membuka halaman, biasanya server yang disalahkan, padahal yang perlu disalahkan adalah proses dan kecepatan delivery dokumen html dari server ke client. Biasa juga diakibatkan oleh browser yang kurang baik. Ada browser yang paling banyak dipakai di dunia ini bahkan sangat lama bila menampilkan halaman dengan banyak nested table (tabel di dalam tabel).

Nah, kalau dokumen HTML tersebut dikompres sehingga ukurannya lebih kecil, maka proses delivery dokumen akan lebih cepat. Misalnya kalo dihitung, dokumen HTML 81 Kb, trus gambar-gambar paling banyak 200 KB, total 281 Kb. Ingat gambar didownload terpisah saat dokumen HTML di-deliver, jadi yang dikompres hanya dokumen HTML saja. Kalau seandainya dikompres setidaknya 30-50%, berarti halaman yang perlu didownload sekitar 25 Kb- 40 Kb saja. Dokumen cepat tampil walaupun gambar belum semuanya didownload.

Proses ini ditangani oleh protokol HTTP versi 1.1. Dokumen terkompres di-deliver dari server ke client, setelah sampai di client, browser harus tahu dan “memekarkan” halaman secara transparan. Untuk itu dibutuhkan browser yang dapat melakukan hal tersebut. Browser sekarang sudah mendukung kok, jadi jangan khawatir….

Caranya:
Gunakan fungsi ob_start dengan fungsi gz_handler sebagai function callback (untuk lebih jelasnya mengenai fungsi ini, bisa Anda lihat di php manual pada bagian Output Control Functions). Perlu diingat, bahwa fungsi gz_handler ini dapat bekerja jika PHP telah diinstal dengan dukungan zlib, server singcat sudah mendukung zlib dalam PHP ;)
Untuk melihat apakah aplikasi web kita telah menggunakan fungsi ini bisa dicek dengan perintah berikut dengan terlebih dahulu pindah ke direktori tempat dimana aplikasi kita berada (buat Linux/Unix/MacOSX user):

- grep ob_start *.php

Contoh:

zayn@felix:/home/project/weblog$ grep ob_start *.php
function.php: ob_start ();

Fungsi ini ditemukan di file function.php, ganti sintaks

ob_start ();
dengan
ob_start ('gz_handler');

Selesai.
But wait.. gimana dengan Windows user? Buka Find file trus isikan Containing teks: ob_start. Trus gimana jika tidak ada fungsi ini? Gampang, buka teks editor lalu edit file yang selalu disertakan (include) dalam tiap file, misalnya config.php, sisipkan pada baris paling atas:

ob_start ('ob_gzhandler');

Fungsi ini juga biasanya menekan pesan error bahwa header telah terkirim (error yang sering dialami oleh singcat user). Selamat mencoba :)

Read also:
  • No related posts

Leave a Comment