URL rewriting merupakan cara untuk merubah URL dinamis menjadi statis.
URL statis sangat Search Engine Friendly karena Search engine lebih menyukai url statis ketimbang url dinamis.
Url dinamis:
?menu=berita&kd=2&judul=penting
Url statis:
menu/berita/kd/2/judul/penting.htm atau menu-berita-kd-2-judul-penting.htm
URL statis ini pada dasarnya adalah url dinamis, hanya ditutupi aja.
jika ada yg request pada URL statis tersebut maka oleh webserver akan diterjemahkan ke dinamis.
Sebelum memulai membuat/mengubah url dinamis tersebut kita harus mengaktifkan beberapa settingan di Apache webserver (setau ibnux hanya bisa di Apache).
ini dilakukan di windows. untuk linux sama aja cuma beda letak posisinya.
biasanya di hostingan settingan ini sudah diaktifkan.
buka file
httpd.conf pada folder Apache.
cari
#LoadModule rewrite_module modules/mod_rewrite.so
#AddModule mod_rewrite.chilangkan tanda pagar agar menjadi seperti ini
LoadModule rewrite_module modules/mod_rewrite.so
AddModule mod_rewrite.cSetelah itu restart apache
lalu kita buka notepad dan tulis kode seperti dibawah ini
Options +FollowSymLinks
RewriteEngine on
RewriteRule menu-(.*)-id-(.*)-judul-(.*)\.htm$ index.php?menu=$1&id=$2&judul=$3simpan dengan nama
.htaccessletakkan file tersebut di direktori teratas
RewriteRule merupakan aturan yg digunakan
pada aturan diatas
menu-(.*)-id-(.*)-judul-(.*)\.htm$ >> menu-berita-id-2-judul-penting.htm
akan diterjemahkan menjadi
index.php?menu=$1&id=$2&judul=$3 >> index.php?menu=berita&id=2&judul=penting
(.*) >> ini adalah Regular Expression(Regex) yang akan mengambil nilai apa aja.
anda dapat menggantikan
- menjadi
/ tapi hati2 karena / dianggap direktori lagi.
$1 didapat dari regex, urutannya dari kiri ke kanan.
jika diinginkan urutannya dapat diubah seperti dibawah ini.
index.php?menu=$1&judul=$3 &id=$2untuk
RewriteRule bisa dibuat banyak contoh:
RewriteRule menu-(.*)-id-(.*)-judul-(.*)\.htm$ index.php?menu=$1&id=$2&judul=$3
RewriteRule menu-(.*)-id-(.*)-hal-(.*)\.htm$ index.php?menu=$1&id=$2&hal=$3
RewriteRule menu-(.*)-id-(.*)-show-(.*)\.htm$ index.php?menu=$1&id=$2&show=$3
RewriteRule menu-(.*)-id-(.*)\.htm$ index.php?menu=$1&id=$2
RewriteRule menu-(.*)\.htm$ index.php?menu=$1aturannya adalah yg terpanjang berada di atas.
setelah yg diatas dibuat dan disimpan, sekarang tinggal mengubah link pada kode2 PHP/html anda menjadi statiskan dgn mengikuti aturan(rewriterule) yang dibuat.
File
.htaccess jika di upload harus menggunakan mode ASCII, atau bisa anda zip dulu dan ekstrak di server.
selamat ber experiment!!
untuk contoh hasil jadinya bisa dilihat pada web ibnux di
www.ibnumaksum.co.nriBNuX THe BRiGHTSiDe