Apa yang bisa kami bantu?

A. Pendahuluan.

CodeIgniter 4 adalah framework PHP yang modern dan ringan, cocok digunakan untuk membangun aplikasi web berbasis arsitektur MVC (Model-View-Controller). CodeIgniter 4 dapat di install atau di upload pada server VPS ataupun hosting seperti cPanel.

 

Gambar 1. Website Error 500.

 

Pada kalanya akan terdapat kendala akses website CodeIgniter 4 yang telah di upload pada hosting mengalmi error 500, namun pada saat menjalankan di local tidak mengalami kendala. Pada artikel kali ini akan melakukan pembahasan cara mengatasi kendala error 500 pada CodeIgniter 4 di hosting cPanel.

 

B. Penanganan.

Dalam menangani kendala error 500, dapat mengaktifkan mode debuging terlebih dahulu yaitu dengan mengganti CI_ENVIRONMENT dari production menjadi development pada file .env.

 

Gambar 2. Konfigurasi .env

 

Setelah itu dapat melakukan penanganan dengan langkah berikut:

 

1. Pengecekkan Permission Folder dan File.

Kendala ini terjadi karena permission tidak sesuai, biasanya untuk permission yang digunakan yaitu:

  • Untuk folder menggunakan 755.
  • Untuk file menggunakan 644.
Gambar 3. Persmission Folder dan File.

 

2. Pengecekkan Konfigurasi .htaccess.

Kendala dapat juga karena konfigurasi .htaccess yang digunakan tidak sesuai, atau konflik dengan konfigurasi .htacces hosting. Dalam mengatasi ini dapt menggunakan .htaccess default Codeiginiter 4 terlebih dahulu yaitu:

 

<IfModule mod_rewrite.c>
    Options -Indexes
    RewriteEngine On
    RewriteBase /
 
    # Ensure files and directories are accessible
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
 
    # Redirect all other requests to index.php
    RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

 

Jika ingin diredirect ke folder public, dapat menggunakan konfigurasi berikut.

 

<IfModule mod_rewrite.c>
    # Matikan directory listing demi keamanan
    Options -Indexes
   
    RewriteEngine On
    RewriteBase /
 
    # 1. Arahkan semua request ke folder /public
    RewriteCond %{REQUEST_URI} !^/public/
    RewriteRule ^(.*)$ public/$1 [L]
 
    # 2. Standar CI4 Rewrite (menghilangkan index.php)
    # Jika file/folder tidak ada, arahkan ke index.php di dalam /public
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ public/index.php/$1 [L]
</IfModule>

 

3. Pengecekkan Penggunaan Versi PHP dan Extensi PHP.

Selanjutnya yaitu melakukan pengecekkan versi PHP dan Requiment ektensi PHP yang dibutuhkan, pada Codeiginiter 4 memiliki requiment berikut.

  • Minimum PHP 8.2.
  • Ekstensi: intl, mbstring, mysqlnd, curl, imagick, gd, simplexml
Gambar 4. List Requiment Codeigniter 4

Requiment install Codeigniter 4 dapat juga dicek pada laman: https://codeigniter.com/user_guide/intro/requirements.html 

 

4. Pengecekkan Struktur Path Folder.

Kendala ini terjadi karena path folder tujuan tidak sesuai, sehingga file tidak ditemukan. Jika folder memindahkan isi folder public ke public_html ( Atau ke document root domain/subdomain), maka perlu mengubah baris berikut pada indes.php.

// Ubah dari:
$pathsConfig = FCPATH . '../app/Config/Paths.php';
// Menjadi:
$pathsConfig = FCPATH . 'app/Config/Paths.php';

C. Kesimpulan.

Error 500 pada CodeIgniter 4 dapat dikarenakan koneksi atau konfigurasi path folder dan file CodeIgniter 4 yang di upload belum sesuai dengan yang ada diserver. Semoga artikel ini dapat membantu Anda. Temukan bantuan lainnya melalui Knowledge Base Biznet Gio. Jika Anda masih memiliki kendala silahkan hubungi support@biznetgio.com atau (021) 5714567.