Alexandromeo “If I had six hours to chop down a tree, I'd spend the first four hours sharpening the axe.”, - Abraham Lincoln

Cara Menghilangkan index.php di CodeIgniter (Lengkap)

3 min read

Cara Menghilangkan index.php di CodeIgniter yang Perlu Anda Ketahui

File index.php merupakan file dasar yang berguna untuk mengelola tampilan website pada CodeIgniter. Secara otomatis, index.php akan ditambahkan saat Anda mengakses alamat URL dari website. Hal itu menyebabkan alamat URL menjadi tidak simpel dan menyulitkan para pengakses website. Oleh karena itu artikel ini akan menjelaskan cara menghilangkan index.php agar Anda tidak kesulitan.

Mengapa Perlu Menghilangkan Index.php di CodeIgniter?

Penggunaan CodeIgniter memang termasuk mudah, cocok untuk Anda yang masih pemula dalam belajar PHP. Namun untuk mengakses URL penulisannya cukup panjang dan kurang nyaman. Hal ini terjadi karena pada Application Flowchart dari CodeIgniter sendiri. Selain itu, URL yang ringkas juga lebih baik dari sisi SEO.

Untuk mengatasi ketidaknyamanan tersebut, file index.php perlu Anda hapus, sehingga URL terlihat lebih rapi dan mudah diakses oleh pengguna website. 

Cara Menghilangkan index.php di CodeIgniter secara Online

Cara pertama untuk menghilangkan file index.php yaitu bisa Anda lakukan secara online melalui cPanel hosting yang terdiri dari tiga langkah sebagai berikut.

Mengedit File config.php

Langkah pertama yaitu bukalah project codeigniter melalui cPanel hosting Anda. Kemudian pilihlah fitur File Manager dan masuk pada direktori public_html. Selanjutnya buka perlu membuka folder application dan config untuk mendapatkan file bernama config.php.

Setelah file tersebut terbuka, edit dengan cara klik kanan pada file lalu pilih Edit. Carilah bagian index_page untuk menghapus index.php diantara tanda petik tunggal. Jangan lupa simpan perubahan setelah Anda mengedit file.

Membuat File .htaccess

Cara menghilangkan index.php selanjutnya yaitu buatlah file bernama .htaccess dalam direktori root codeigniter. Klik pada fitur untuk menambah file yang ada di bagian kiri atas File Manager. Nama file .htacces harus benar dan menggunakan awalan titik, Anda tidak boleh mengganti dengan ekstensi apapun. Kemudian klik Create New File.

File yang menggunakan tanda titik sebagai awalannya, bersifat tersembunyi. Sehingga Anda tidak bisa melihat file yang baru saja Anda buat pada direktori root Anda. Lakukan pengaturan pada File Manager untuk menampilkan file dan membukanya untuk mengedit atau memasukkan kode berikut ini :

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

Jangan lupa untuk menyimpan file yang sudah Anda edit dengan cara klik tombol Save Changes.

Melakukan Testing

Setelah melakukan kedua langkah sebelumnya, untuk memastikan URL berhasil diakses tanpa index.php atau belum, Anda perlu melakukan pengecekan dengan cara membuat controller baru dengan nama file bebas berekstensi php. Tujuan pembuatan controller baru yaitu untuk mengarahkan tampilan pada view yang sudah Anda buat sebelumnya.

Jika Anda sudah berhasil membuat controller, pastikan Anda mendaftarkannya pada route.php supaya rute tetap terbaca. Caranya adalah dengan membuka folder config kemudian pilih file routes.php dan tambahkan route baru dengan nama file controller yang sudah Anda buat. Jika sudah, saatnya Anda mengakses alamat website melalui URL baru tanpa index.php.

Cara Menghilangkan Index.php di CodeIgniter secara Offline

Saat Anda mempunyai website yang terbuat dari CodeIgniter namun belum di upload pada layanan hosting, maka Anda hanya bisa mengedit file dengan cara offline melalui localhost. Berikut ini langkah-langkahnya.

Langkah 1 – Persiapan

Sebelum mengikuti cara menghilangkan index.php, ada beberapa hal yang perlu Anda persiapkan terlebih dahulu antara lain :

  • Text editor untuk mengedit source code codeigniter.
  • Web browser berfungsi menampilkan hasil project Anda.
  • Web server untuk menyimpan serta mengakses project di localhost. Contoh web server paling populer yaitu XAMPP.
  • Folder project codeigniter yang bisa Anda akses pada c:\xampp\htdocs.

Langkah 2 – Buka Project

Buka project Anda melalui text editor dengan cara klik File dan Open Folder, lalu cari pada htdocs.

Langkah 3 – Buat File .htaccess

Untuk membuat file ini, caranya juga mudah yaitu hanya dengan klik File lalu New File, ketikkan kode berikut :

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

Jika Anda sudah selesai mengetikkan kode diatas, simpan file pada root folder project codeigniter dengan nama .htaccess tanpa ekstensi. File ini akan berada dalam satu tempat bersama folder system, application, dan user guide. 

Langkah 4 – Edit File config.php

Langkah selanjutnya dari cara menghilangkan index.php adalah membuka file config.php yang terdapat pada folder application, config, lalu config.php. Carilah konfigurasi index_page dengan source code sebagai berikut :

$config['index_page'] = 'index.php';

Kemudian hapus index.php yang berada diantara tanda petik satu sehingga menjadi :

$config['index_page'] = '';

Lalu simpan perubahan setelah Anda menghapusnya.

Langkah 5 – Buat Controller dan View Baru

Setelah melakukan langkah-langkah sebelumnya, Anda perlu mengecek apakah sudah berhasil menghilangkan index.php atau belum. Cara mengeceknya adalah buat satu controller dan view masing-masing satu. Buatlah controller dan view dengan cara klik kanan pada folder controllers lalu klik New File. Simpan perubahan setelah Anda membuat file tersebut.

Langkah 6 – Akses URL melalui Browser

Cara menghilangkan index.php juga memerlukan pengecekan melalui browser. Caranya yaitu buka web browser, kemudian pada address bar ketikkan localhost/namaprojectanda/namacontroller. Jika website Anda berhasil dibuka, artinya Anda berhasil menghilangkan index.php pada codeigniter.

Kesimpulan

CodeIgniter adalah salah satu framework PHP yang populer untuk mengembangkan website karena fiturnya juga tidak diragukan lagi. URL codeigniter mendukung SEO dan human friendly, namun secara default tetap menambahkan index.php. Oleh karena itu, lakukan cara menghilangkan index.php diatas agar URL lebih ringkas.

Alexandromeo “If I had six hours to chop down a tree, I'd spend the first four hours sharpening the axe.”, - Abraham Lincoln