Menghilangkan index.php di Code Igniter untuk di Berbagai Server

Posted on 14. Feb, 2010 by Cheyuz in Code Igniter, PHP, Tips, Tutorial, _other

Kali ini, Cheyuz bakal ngasi tips buat temen2 semua pengguna Code Igniter (CI), berhubung aku sekarang lagi ngulik Framework ini, hehe… yaa sekedar berbagi pengalaman lah..

Perlu dicatat bahwa kalo qta make Framework CI ini, kita bakal ngeliat kalo-kalo ternyata CI itu memakai tulisan index.php di URLnya, baru diikuti dengan /controller/action… nah ini merepotkan bagi kita yang suka dengan Pretty URL (URL yang cantik, indah, enak untuk dibaca :P )..

kalo misalnya ada controller Berita, kemudian nama actionnya add, misal nama situsnya http://www.cheyuz.com maka di URL harus seperti ini:


http://www.cheyuz.com/index.php/berita/add

Nah, biar URL itu lebih enak buat dibaca, mending kita hilangkan index.php nya… jadi seperti ini:


http://www.cheyuz.com/berita/add

Caranya sangat sederhana,, bagi pecinta maupun pengembang framework mungkin udah ga asing lagi memakai cara ini, cara yang dipake untuk ngerewrite URL, kita memakai 1 file yang bernama .htaccess.

Kita buat file .htaccess di notepad:

RewriteEngine on
RewriteRule ^$ index.php [L]
RewriteCond $1 !^(index.php)
RewriteRule ^(.*)$ index.php/$1 [L]

kemudian save file tersebut di webroot/base_url kamu…
sekarang kamu bisa memanggil halaman dengan URL seperti ini:


http://www.cheyuz.com/berita/add

yang pada hakikatnya sama dengan:


http://www.cheyuz.com/index.php/berita/add

TAPII,,,,, ada suatu masalah…
sama seperti waktu kemaren aku nge-rombak http://www.cheyuz.com..

Kan aku nge-rombak situs Cheyuz.com dari asalnya yang ga pake framework yang kini udah pake CI.. Nah pas kemaren itu aku ngupload hasil rombakanku ke hosting.. nah tau-tau pas diupload, ternyata aneh, kenapa ketika aku ketik:


http://www.cheyuz.com/diary

ato yang lainnya ternyata ga bisa kebuka, yang keluar tampilan home terus…
Tetapi kalo URL nya seperti ini bisa…


http://www.cheyuz.com/index.php/diary

Nah, kalo temen2 juga ngalamin hal yang sama, ternyata masalahnya ada config CI sendiri, yaitu dengan memodifikasi config.php:

$config['uri_protocol'] = "AUTO";

Diganti dengan

$config['uri_protocol'] = "REQUEST_URI";

Cuman itu aja masalahnya, gila kemaren aku bingung kok kenapa bisa gini,, eh taunya cuman setting itu aja, hahaha :D

Mudah2an bermanfaat.. :)

Tags: , , , ,

11 Comments

iip

14. Feb, 2010

enya euy aya ‘index.php’-an mah asa kurang alus, ari teu aya ‘index.php’-an mah asa rada rapih,
mantap cep,,
hturnuhun lah….

Cheyuz

14. Feb, 2010

hehe sami2 Ip..

iip

14. Feb, 2010

eh cep tapi aya masalah euy, kan file css teh disimpan di “webroot/css/style.css”,
tah jadi teu ka load euy, padahal awal na mah bisa, tapi sesudah na pake .htaccess malah jadi teu ka-load file css na,

jadi we tampilan na ancur…

kumaha tah??

Cheyuz

14. Feb, 2010

owh eta mah masih direstrict, kur tinggal nambahan ‘css’ dina htaccessna…
jadi pan asalna kieu:

RewriteEngine on
RewriteRule ^$ index.php [L]
RewriteCond $1 !^(index.php)
RewriteRule ^(.*)$ index.php/$1 [L]

ganti jadi:

RewriteEngine on
RewriteRule ^$ index.php [L]
RewriteCond $1 !^(index.php|css)
RewriteRule ^(.*)$ index.php/$1 [L]

tambahan ‘css’ setelah index.php baris ka 3

iip

15. Feb, 2010

wah bner mantap cep..
hturnuhun cep…

mklum urang can ngrti mslah .htaccess mh,,hehe..
jelaskeun lah cep kunaon bisa kitu nulis na..
mulai ti baris ka dua sampe baris ka-opat..

htrnuhun bro…

(eh ngmong2 bae teu sundaan yeuh ?? haha.. kalah sunda-an.. ke batur roaming…)

tina

30. Apr, 2010

Cep. .
Udh pake css . .
Tp koq ttp g keload yh cssnya ?

Cheyuz

05. May, 2010

di .htaccess nya tambahin nama foldernya supaya ga direstrict… sebelum kata index.php

joko

14. May, 2010

Asu, masih eror nyet…:p

Cheyuz

14. May, 2010

coba cek lagi… tutorial di sini udah bener gan :)

demon tattoo designs

13. Jun, 2010

Very interesting website, but you must improve your header graphics.

Cheyuz

15. Jun, 2010

@tattoos: thankz 4 u’r comments :)

Leave a reply

Spam Protection by WP-SpamFree Plugin