Bagi kalian yang baru menggunakan Codeigniter, pasti cukup bingung jika menemui beberapa error yang muncul. Ya, codeigniter adalah framework open source gratis yang dapat dikembangkan. Namun, terkadang kalian akan menemui kesulitan ketika pindah hosting atau upload dari xampp ke hosting. Sebab, dalam prosesnya akan mengalami 404 not found di codeigniter.
Mengatasi 404 Not Found Di Codeigniter
Mengatasi 404 not found di codeigniter ada beberapa hal yang perlu diperiksa, yaitu
Cek PHP di codeigniter
Cek terlebih dahulu untuk versi codeigniternya, sebelum kalian lanjut untuk melakukan setting control panel. Sebab, dikhawatirkan codeigniter tidak support dengan php yang dipilih pada panel hosting.
Codeigniter 4 ( gunakan PHP versi 7.2 atau atasnya), sedangkan Codeigniter 3 (gunakan PHP versi 5.6).
Lalu, kalian bisa langsung sesuaikan dengan cara :
Login cpanel > PHP Selector > pilih versi php dan klik set as current
Cek dahulu .htaccess di codeigniter
Harus ada file .htaccess di codeigniter, pengecekan bisa dilakukan di file manager pada panel hosting. tambahkan .htaccess sesuai berikut:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
Atau dapat menggunakan file .htaccess lengkapnya, berikut:
- Edit httpd.conf. Kalau di Linux biasanya ada di /etc/httpd/conf. Ganti AllowOverride None dengan AllowOverride All.
- Pastikan nama file di folder Models dan Controller dimulai dengan huruf kapital. Misalnya: Login_model.php atau Login.php
- Pastikan nama class dimulai dengan huruf kapital.
Cek Penamaan File Controller
Dalam beberapa kasus sering ditemukan kondisi saat didevelop di lokal program atau aplikasi dari codeigniter berjalan dengan normal tanpa kendala apapun, namun setelah projek codeigniter dipindah kehosting terjadi error 404, kasus seperti ini biasa terjadi karena masalah sensitivecase, dimana huruf kapital dan huruf kecil dianggap beda. Sehingga file dengan nama “Akucontroller.php” dan “akucontroller.php” dianggap dua file yang berbeda.
Kasus semacam itu biasa terjadi pada Hosting atau Server dengan OS Linux.
Solusinya adalah ubah huruf pertama dari nama-nama file Controller, Model, View dengan Capital/Upper Case (huruf besar)