Menghilangkan Index.php pada CI dan beberapa nama parameter Controller tambahan


Hm, banyak tutorial kuk digoogle untuk menghilangkan kata “Index.php” pada Aplikasi Web yang kita Buat, Contoh nih,  saya membuat aplikasi Admin pada situ

diazsoft.com/malam2/index.php/dsadministrator/

Hm, gimana ya, Kalo kepingin menghilangkan index.php, sehingga menjadi

diazsoft.com/malam2/dsadministrator/

Gimana ya caranya😀 , hihihi😀 caranya mudah kuk ternyata😀 ternyata kita cukup mengaktifkan modul rewrite yang ada pada tempat Hosting anda, kebanyakan sih, di kebanyakan tempat Web Hostingan Berbayar , sudah mengaktifkan Modul Rewirte tersebut, namun, gimana kalo kita yg punya server sendiri, ihihihi, tentu kita yakinkan untuk mengaktifkan modul tersebut :

Pertama : Aktifkan modul tersebut yang terletak pada file  httpd.conf ;
Cari Letak Penempatan httpd.conf tersebut, karena di tiap aplikas web server yang digunakan mempunyai letak yg berbeda beda, kemudian Edit pada bagian ini :

#LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

Menjadi

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

Kemudian restart Web Server anda, kalo bingung, restart aja komputernya sama Otaknya😀 heheheh😛

Langkah 1 :

sekarang siapkan secangkir Teh hangat😀 karena langkah langkah kita hampir selesai.

Langkah 2:
Buka  system/application/config/config.php,  set parameter index file menjadi kosong.

$config['index_page'] = "";

Langkah 3:
Buat sebuah file .htaccess pada root directory code igniter (sejajar dengan index.php, /database, /public, /system )  isikan file tersebut dengan aturan ini:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]


Sekarang coba akses aplikasi kamu tanpa index.php, misalnya:
http://localhost/Aplikasiku/SomeController

Keterangan:

RewriteEngine On
Mengaktifkan engine Rewrite (engine untuk pola penulisan ulang pada URL)

RewriteCond %{REQUEST_FILENAME} !-f
Test, apakah file (-f ) yang diminta pada url  {REQUEST_FILENAME} tidak  (!) eksis.

RewriteCond %{REQUEST_FILENAME} !-d
Test, apakah direktori (-d) yang diminta pada url tidak (!) eksis.

RewriteRule ^(.*)$ index.php/$1 [L]
Bila kedua kondisi di atas (RewriteCond) terpenuhi maka terapkan aturan ini. Kita minta tolong sama apache agar menyisipkan kata index.php sebelum URI terakhir.

Misalnya kita merequest “SomeController” pada:

http://localhost/Aplikasiku/SomeController,

setelah di terapkan RewriteRule maka bentuk URL akan dirubah menjadi :

http://localhost/Aplikasiku/index.php/SomeController

Nah, Anda Pernah Ngak Melihat Aplikasi Facebook , dengan URL seperti Berikut

http://Facebook.com/fendiaz

Hm, pasti anda akan langsung mengambil pemikiran seperti berikut ;

1. Apa ia Fendiaz adalah sebuah nama Controller ?

2. Apakah Fendiaz adalah Sebuah nama Segment ?

Kemungkinan ini adalaha sebuah nama Segment, karena ngak mungkin dia membuat sebuah controller untuk masing masing user, jadi

Contoh nih, saya membuat beberapa Situs dengan Url seperti Berikut

diazsoft.com/Profile/Fendiaz

Pasti Kita Tau kan Profile adalah nama Controller, sendangkan Fendiaz adalah nama Segment variable, so, kita hilangkan saja Profile  – nya ;

Cukup Edit dan tambahkan pada File Routes.php pada System/application/config :

$route[‘^(?!ezstore|ezsell|login).*’] = “Profile/$0″;

Hm, maka Saat anda Menjalankan Diazsoft.com maka secara otomatis dia akan menjalankan Controller Profile, dan kita hanya tinggal menambahkan Permainan Segment Variable pada “/” selanjutnya.

Namun, bagaimana kalo saya ingin menjalankan Controller lain ??

Hm, itu dia kendala yang saya temukan, Kita harus mengorbankan Controller yang lain jiga menjalankan permainan trik router diatas, maka kita tinggal memaiinnkan SUBDOMAIN / Virtual Host jika kita ingin menjalankan Conttroller controller yang lain, Pembahasan permainan Subdomain/ Cirtual Host ini akan dibahas pada pertemuan berikutnya.

Oke, Selamat Mencoba, dan jalangan Lupa Comment,

Salam Diaz.

Menghilangkan Index.php pada CI dan beberapa nama parameter Controller tambahan

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s