Belajar URL Rewriting 1

3 11 2008

Pernahkah Anda melihat URL ketika membaca berita dari detik.com? Atau umpamanya seperti, namadomain.com/artikel/baca/tanggal/judul. Mungkin ada yang bertanya-tanya, apakah memang filenya ada ketika kita membuka webnya secara fisik? Kemungkinan besar tidak, karena ada beberapa trik yang digunakan agar URL dapat menjadi seperti subkategori tersebut. Yaitu penggunaan URL Rewrite.

Pengetahuan saya mengenai URL rewite memang sangat terbatas, namun saya akan mencoba beberapa hal yang saya ketahui tentang URL rewrite. Pertama kali yang perlu kita ketahui, apakah mod_rewrite sudah di-“load” di dalam server kita apa belum. Caranya gunakan phpinfo();.

Apabila modul tersebut sudah ter-“load”, maka kita coba membuat file dengan nama .htaccess . Namun perlu diingat, di dalam sistem oerasi Windows, kita tidak dapat membuat file tanpa nama file. Apabila Anda belum bisa membuat file tersebut, gunakanlah file dalam engine wordpress yang versi unduhan.

Kemudian kita buka file tersebut menggunakan notepad atau text editor lain. Lalu kita tuliskan:

RewriteEngine On
RewriteRule wordpress http://www.wordpress.org/

Usahakan untuk menyimpan file tersebut ke dalam satu folder, seumpama folder dengan nama latihan. Kemudian, kita coba ketikan: http://localhost/latihan/wordpress (apabila file disimpan di dalam komputer lokal). Apabila komputer kita terkoneksi dengan internet, maka otomatis kita akan dibawa ke situsnya wordpress.org.

Namun apabila kita ingin mengambil variabel dari URL yang kita buat, seumpama kita ingin mengambil variabel dari: http://localhost/latihan/2, maka kita perlu menyiapkan file tujuan yang akan membaca variabel yang kita butuhkan. Tentu saja yang berakhiran .php.  Umpamanya kita namakan variabel.php. Dalam file tersebut kita ketikan kode:

<?
echo $_GET['id'];
?>

Kemudian dalam .htaccess kita ganti juga RewriteRule-nya menjadi:

RewriteRule  ^latihan/([0-9]+)$ variabel.php?id=$1

Lalu kita buka lewat browser: http://localhost/latihan/2. Apakah yang akan tertulis,? Apakah angka 2? Apabila iya, berarti sudah benar. Namun ingat, hanya bisa diisi oleh angka. Apabila ingin menggantinya agar dapat membaca sebuah kata, maka RewiteRulenya diganti menjadi:

RewriteRule  ^latihan/([a-zA-Z0-9-]*)$ variabel.php?id=$1

Sehingga kita dapat mengambil variabel seperti: http://localhost/latihan/bahasa

Untuk variabel yang lebih dari dua, kita hanya perlu memodifikasi sedikit kode-kodenya.

<?
$part = explode(",",$_GET['id']);
echo $part[1]; //digunakan jika ingin mengambil variabel kedua (ingat penggunaan array)
?>

Di dalam .htaccess-nya juga kita ganti menjadi:

RewriteRule  ^latihan/([a-zA-Z0-9-]*)/([0-9]+)$ variabel.php?id=$1,$2

Kita coba akses, http://localhost/latihan/variabel/1. Dan hasilnya adalah menampilkan angka 1.

Silahkan Anda bereksperimen sendiri. Semoga berhasil.

Sumber:

http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html

http://httpd.apache.org/docs/1.3/misc/rewriteguide.html


Aksi

Information

One response

17 01 2009
cibays

OK Thank You!!!

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s




%d blogger menyukai ini: