Membuat Friendly URLs Di Apahche dengan ReWriteMode

15 04 2008

Belakangan ini saya bingung mencari - cari bagaimana ya caranya membuat Friendly URLs di website. Apa yang dimaksud dengan Friendly URLs? Lebih jelasnya begini :

Pernahkan Anda membuat link seperti ini :
www.namadomain.com/index.php?product=stone&category=limestones

Jenis URLs seperti diatas biasanya tidak disukai sama search engine. Dan jenis URL diatas lebih mudah kenah SQL injection. Lalu bagaimana yang dimaksud dengan friendly URLs? coba perhatikan link di bawah ini :

www.namadomain.com/product/stone/limestones.html

link diatas disebut dengan Friendly URLs. Secara kasar kita melihat bahwa link di atas mengacu pada folder product > stone > limestone.htm, padahal sebenarnya bukan folder yang kita maksudkan disana melainkan parameter yang kita passing. Dalam hal ini kita mempassing 2 buah parameter yaitu : variabel product : stone dan category=limestone

Artinya begini jika ada akses link www.namadomain.com/product/stone/limestones.html maka alihkan link tersebut ke link
www.namadomain.com/index.php?product=stone&category=limestones

sederhana kan?

Bagaimana caranya membuat hal seperti itu? Teman - teman saya sarankan mengetahui sedikit dasar pola - pola regex agar bisa membuat hal itu. Tidak perlu advance, dasarnya saja.

Ok sekarang kita mulai persiapan untuk membuat itu :

PERSIAPAN :

1. install apache, php dan mysql biar lebih lengkap.

2. setelah instalasi sukses, bukalah file httpd.conf dan lakukan modifikasi seperti di bawah ini :

# Loading module -- jalankan loading module ini yang awalnya di check sekarang di uncheck
LoadModule rewrite_module modules/mod_rewrite.so
#Arahkan document root-nya sesuai dengan lokasi directory Anda.
DocumentRoot “C:/Program Files/VertrigoServ/_htdocs”

#biasanya sudah default seperti ini
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>

#<Directory “C:/Program Files/Apache Group/Apache2/htdocs”> kalau yang ini awalnya di tutup seperti ini, kemudian saya buka seperti yang terlihat di bawah ini. Saya arahkan ke tempat default folder saya.

<Directory “C:/Program Files/VertrigoServ/_htdocs”>

#    Options Indexes FollowSymLinks

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be “All”, “None”, or any combination of the keywords:
#   Options FileInfo AuthConfig Limit

#  Nah kalau yang di bawah ini defaultnya seperti ini #AllowOverride None rubahlah menjadi seperti dibawah ini
AllowOverride ALL

# Setelah itu tambahkan baris dibawah ini
Options MultiViews Indexes FollowSymLinks

#
# Controls who can get stuff from this server.
#
Order allow,deny
Allow from all

</Directory>

3. Setelah selesai, strat apache Anda. Yang awalnya sudah start, sekarang di restart.
4. Langkah berikutnya adalah membuat file .htaccess. Buka notepad kemudian tuliskan baris perintah berikut.

 <ifModule mod_rewrite.c>
#RewriteMode Enable
RewriteEngine On
RewriteBase /ganti_dengan_nama_folder
_project_anda/ #misalnya coba_url ## Hide dynamic URLs RewriteRule ^product/(.*)/(.*)\.html index.php?product=$1&category=$2 </ifModule>


simpan file tersebut di folder “coba_url” dengan nama .htaccess. ingat bukan .htaccess.txt

5. Langakah berikut adalah menguji apa yang telah kita bikin tersebut. Buat file dengan nama misalnya adalah click.html
kemudian buatlah link seperti ini di file tersebut (simpan di folder “coba_url”):
<a href=”http://localhost/coba_url/product/stone/limestones.html“>Click</a>

6 Buat file index.php isikan baris perintah di bawah ini. kemudain simpan di folder “coba_url”

<?
 $product = $_GET['product'];
$category = $_GET['category'];

// output the information to verify that it is working.
$output = “The following variables were passed in the URL string:<br /><br />”;
$output .= “Variable product: ” . $product . “<br />”;
$output .= “Variable category: ” . $category . “<br />”;
$output .= “<br />Your mod-rewrite script seems to be working fine. Product”;
echo $output;
?>

7. Sekarang coba akses file click.html > http://locahost/coba_url/click.html . kemudian klik link tersebut.


Actions

Information

One response to “Membuat Friendly URLs Di Apahche dengan ReWriteMode”

26 05 2008
Ramayadi (06:20:30) :

*mangut-mangut* baru ngerti :)

Leave a comment

You can use these tags : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>