[Solved] [Ask] Cara url mapping, di serv Apache / yg laen
Min, Saya baru disini. saya mau tanya.
Gimana cara url mapping. cara di gugel kebanyakkan g masuk
yang gw tau url mapping itu kyk
mis: req: namaweb.com/usr/bajaklaut
nti servicenya ke namaweb.com/php/search?usr=bajaklaut
intinya :
namaweb.com/usr/bajaklaut => namaweb.com/php/search?usr=bajaklaut
trims, ditunggu jawabbanny :')
Tagged:
Comments
Halo, sorry nih baru nongol
Mungkin yang kamu maksud URL Rewrite ya..
Buat di Apache, aktifkan dulu modul mod_rewrite, caranya buka file konfigurasi nya di folder apache, lalu cari file http.conf. Lalu Uncomment baris seperti di bawah ini:
LoadModule rewrite_module modules/mod_rewrite.so
AddModule mod_rewrite.c
Kalo udah, restart dulu service apachenya.
Terus kita coba RewriteRule yg mudah dulu. Buat file php dengan isi seperti ini : < ? php echo “test”; ? > Lalu simpan dengan nama misalnya test.php
Lalu buat file .htaccess yang isinya:
< IfModule mod_rewrite.c >
RewriteEngine on
RewriteRule ^(.*).html$ $1.php [NC]
< /IfModule >
Simpan file .htaccess ini satu folder dengan file test.php ya. Sekarang coba akses file test di browser dengan URL http://127.0.0.1/test.html jika muncul tulisan "test" berarti sudah berhasil.
Untuk struktur URL seperti misalnya https://errorcybernews.com/tingkat/jomblo/1 coba buat file php yang isinya:
< ? php
switch ($_GET['level'])
{
case 01:
$level = 'highclass';
break;
case 02:
$level = 'mediumclass';
break;
case 03:
$level = 'lowclass';
break;
}
? >
< html >
< head >
< title >Test< /title >
< /head >
< body >
< ? php echo 'Kamu ' . $_GET['type'] . ' level ' . $level ? >
< /body >
< /html >
Simpan dengan nama index.php terus buat file .htacsess nya dengan RewriteRule:
< IfModule mod_rewrite.c >
RewriteEngine on
RewriteRule ^tingkat/([a-zA-Z]+)/([0-9]+) index.php?type=$1&level=$2 [NC]
< /IfModule >
Keterangan:
- ([a-zA-Z]+) berarti membatasi agar karakter yang diterima hanya berupa huruf a sampai z baik itu huruf besar atau kecil.
- ([0-9]+) berarti membatasi agar angka yang diterima hanya berupa angka 0 sampai 9.
Tanda + berarti angka/huruf tersebut boleh lebih dari 1.
Dengan cara seperti di atas jika kita mengetikkan http://127.0.0.1/tingkat/jomblo/1 di web browser, maka otomatis akan diterjemahkan sebagai http://127.0.0.1/index.php?type=jomblo&level=1
Terus bereksperimen dan praktekan sampai dapet jalur logikanya, happy learning