Cara Menghilangkan index.php dan Pengaturan Dasar Pada CodeIgniter

Jaka Rabu, 15 Maret 2017 21:17:16 Web Development 22419

Hal yang kita alami saat menginstall Codeigntier adalah bahwa URL yang sangat panjang, tidak SEO friendly dan tidak user friendly. Kali ini kita mencoba untuk meminimalkan sebanyak yang kita bisa untuk URL dinamis kita buat. Di bawah ini kami akan menjelaskan dan memberikan solusi untuk meminimalkan URL sebanyak mungkin dengan htaccess, beberapa trik route dan metode _remap () dari CodeIgniter.

Tapi biasanya terjadi masalah ketika Aplikasi web base atau website yang sudah saya bangun menggunakan Framework CodeIniter adalah terjadi error ketika menghilangkan index.php pada url, ternyata ada kesalahan pada pengaturan .htaccess nya dan juga config.php nya. Berikut ini Pengaturan Dasar Pada CodeIgniter yang bisa digunakan. (Tidak hanya untuk menghilangkan index.php) namun untuk Pengaturan Dasar ketika kita menggunakan codeigniter sebagai Framework website atau aplikasi web base.

Config.php

Pertama buka file config.php yang berada di application/config
Base_url sebaiknya dikosongkan saja jika anda menggunakan Codeigniter 2.XX
$config['base_url'] = "";

index_page juga sebaiknya dikosongkan saja, agar seo lebih baik, tapi butuh htaccess juga untuk melengkapi settingan ini.
$config['index_page'] = '';

Uri_protocol di buat AUTO
$config['uri_protocol'] = 'AUTO';

Encryption_key sebaiknya di isi dengan karakter acak.
$config['encryption_key'] = 'J4k4Alk412i2mA';

sess_cookie_name sebaiknya dirubah, agar ROBOT yang dibuat orang-orang yang tidak bertanggung jawab tidak bisa mendeteksi kalau website kamu dibuat dengan codeigniter.
$config['sess_cookie_name'] = 'apa_saja';

sess_encrypt_cookie sebaiknya dibuat TRUE agar cookie di enkripsi
$config['sess_encrypt_cookie'] = TRUE;

Settingan lain berkaitan dengan session dan cookies sebaiknya diganti juga agar lebih aman.

 

.htaccess

Untuk melengkapi settingan website codeigniter agar berjalan dengan baik, dan untuk menghilangkan index.php di URL, maka perlu dibuat file tanpa nama namun dengan extensi .htaccess, dan berikut isi file .htaccess nya

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^(.*)$ index.php/$1 [NC,L]

disitu ada tulisan nama_folder, karena dibuat di sebuah folder di htdocs, ketika diupload ke server hosting, biasanya kita tidak menaruhnya di folder, tapi langsung di public_html nya, maka ketika dihosting /nama_folder harus dihapus, sisakan /index.php saja.

Sekian tutorial Cara Menghilangkan index.php dan Pengaturan Dasar Pada CodeIgniter ini, semoga bermanfaat.