Cara menghilangkan index.php pada CodeIgniter
Ketika kali pertama menggunakan framework CodeIgniter untuk membuat sebuah aplikasi, pasti kita akan menemukan index.php
pada setiap URLnya. Contohnya seperti ini:
domain.com/index.php/blog/judul-artikel
Hal ini sebenarnya tidak menjadi masalah, toh aplikasi yang kita buat tetap berjalan dengan normal. Tetapi akan terlihat lebih baik jika URL tersebut tanpa index.php
.
Coba bandingkan URL yang ada dan tidak ada index.php nya.
domain.com/blog/judul-artikel
Terlihat lebih rapih dan bersih yang tanpa index.php bukan?
Untuk menghilangkan index.php
pada URL CodeIgniter, kita cukup menambahkan file .htaccess
pada direktori root aplikasi serta mengaktifkan mod_rewrite
pada server Apache.
Untuk pengguna sistem operasi Linux berbasis Debian, silakan aktifkan mod_rewrite
dengan mengikuti panduan berikut: Tutorial mengaktifkan mod_rewrite Apache
.
Untuk pengguna sistem operasi Windows langsung saja tambahkan file .htaccess
ke folder root aplikasi.
Berikut tata cara membuat dan menambahkan file .htaccess
:
- Silakan buka text editor.
- Kemudian buat file baru dan isi dengan kode di bawah ini:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
- Simpan dengan nama
.htaccess
. - Tahap berikutnya silakan buka folder
application -> config
lalu edit fileconfig.php
. - Dalam file
config.php
cari kode:
$config['index_page'] = 'index.php';
- Silakan hapus
index.php
sehingga menjadi seperti ini:
$config['index_page'] = '';
- Kemudian simpan.
Dengan menerapkan cara di atas maka URL akan terlihat lebih bersih tanpa index.php
.