Rewrite URL atau biasa di sebut Clean URL berfungsi untuk menyederhanakan URL dan tampak lebih friendly, selain itu mudah di index oleh search engine. dengan kelebihan tersebut metode ini diterapkan hampir di semua BLOG atau WEB portal yang ada.
Aturan ReWrite di simpan pada file .htaccess, file .htaccess sendiri adalah file configurasi external yang dapat di baca oleh apache dimanapun asal berada di root webserver.
Contoh URL yang menggunakan ReWrite URL
URL asli
http://localhost/news.php?thn=2009&bln=08&tgl=01&id=2309
Pada Browser
http://localhost/news/2009/08/01/2309/content_news
http://localhost/news/2009_08_01_2309_content_news.html
http://localhost/news/200908012309/content_news.html
http://localhost/read/200908012309/content_news.html
dst..
Bagaimana cara membuatnya?
1. Buat file dengan nama .htaccess di docroot (Document Root) web Anda.
2. Agar apache dapat membaca file .htaccess aktifkan module mod_rewrite.so pada configurasi httpd.conf
#LoadModule rewrite_module modules/mod_rewrite.so
menjadi
LoadModule rewrite_module modules/mod_rewrite.so
3. Restart httpd
4. Masukan perintah sederhana di bawah ini ke file .htaccess
RewriteEngine on
RewriteRule ^(.*)\.htm$ $1.php [NC]
5. Buat file PHP dengan nama testing.php
6. Masukan baris code di bawah ini ke file .htaccess
echo "Ini adalah testing.php";
?>
7. Panggil http://localhost/testing.htm di browser Anda.
Perintah diatas akan merubah semua berakhiran .htm menjadi .php
Hasil --> http://localhost/testing.htm maka di baca oleh server adalah http://localhost/testing.php
Penjelasan :
RewriteEngine on --> Mengaktifkan Module ReWrite
RewriteRule --> rule atau aturan proses direct. bila tidak sesuai pola maka URL yang di baca server sesuai dengan yang tertulis di browser.
^(.*)\.htm$ --> pola rule, artinya baca dari character pertama "diwakili tanda ^", di lanjutkan dengan karakter
apa aja "diwakili tanda ." ulangi sebanyak charater yang ada di "wakili tanda *",
diakhiri .htm "diwakili \.htm", sampe character terakhir "diwakili tanda $".
tanda kurung berfungsi sebagai pengklompok pada kasus di atas memisahkan http://localhost/testing dengan .htm,
$1.php --> $1 adalah nilai yang di ambil dari Pola di atas yang di apit tanda kurung,
pada kasus di atas adalah http://localhost/testing setelah itu di lanjutkan dengan .php,
sehingga hasil akhir menjadi http://localhost/testing.php
contoh lainnya :
1.
Pada Browser
http://localhost/news/2009/08/01/2309/content_news
di baca server
http://localhost/news.php?thn=2009&bln=08&tgl=01&id=2309
rule yang bisa digunakan
RewriteRule ^news/([0-9]*)/([0-9]*)/([0-9]*)/([0-9]*)(.*)$ /news.php?thn=$1&bln=$2&tgl=$3&id=$4 [NC]
atau
RewriteRule ^news/([0-9]+)/([0-9]+)/([0-9]+)/([0-9]+)(.+)$ /news.php?thn=$1&bln=$2&tgl=$3&id=$4 [NC]
atau
RewriteRule ^news/([^/]+)/([^/]+)/([^/]+)/([^/]+)(.+)$ /news.php?thn=$1&bln=$2&tgl=$3&id=$4 [NC]
2.
Pada Browser
http://localhost/news/2009_08_01_2309_content_news.html
di baca server
http://localhost/news.php?thn=2009&bln=08&tgl=01&id=2309
rule yang bisa di gunakan
RewriteRule ^news/([0-9]+)_([0-9]+)_([0-9]+)_([0-9]+)(.+)$ /news.php?thn=$1&bln=$2&tgl=$3&id=$4 [NC]
3.
Pada Browser
http://localhost/news/200908012309/content_news.html
di baca server
http://localhost/news.php?thn=2009&bln=08&tgl=01&id=2309
rule yang bisa di gunakan
RewriteRule ^news/([0-9]{4})([0-9]{2})([0-9]{2})([0-9]+)(.+)$ /news.php?thn=$1&bln=$2&tgl=$3&id=$4 [NC]
4. Selanjutnya Anda sendiri yang mencoba.
Salam Teknologi Informasi
Tidak ada komentar:
Posting Komentar