Memahami Penyebab Error 500 Internal Server Error
Error 500 Internal Server Error pada WordPress merupakan indikasi bahwa server mengalami masalah tidak terduga saat memproses permintaan, namun server tidak dapat menentukan secara spesifik di mana letak kesalahannya. Secara teknis, ini sering kali dipicu oleh berkas .htaccess yang korup, limit memori PHP yang habis, atau konflik pada plugin/tema yang baru diinstal.
Langkah 1: Mengaktifkan Mode Debugging (WP_DEBUG)
Langkah pertama yang wajib dilakukan adalah memaksa WordPress untuk menampilkan log error aslinya (bukan sekadar halaman error 500 generik). Akses File Manager di cPanel atau gunakan koneksi SFTP, lalu navigasi ke direktori utama (root) instalasi WordPress Anda (biasanya di public_html).
- Cari file bernama
wp-config.php. - Klik kanan dan pilih Edit.
- Cari baris kode
define( 'WP_DEBUG', false );. - Ubah kode tersebut menjadi baris berikut untuk mengaktifkan log error ke dalam file
debug.log:define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false ); - Simpan perubahan. Segarkan halaman website Anda yang error, lalu periksa folder
wp-content/untuk melihat filedebug.log. File ini akan menunjukkan lokasi file plugin atau tema mana yang memicu error fatal.
Langkah 2: Memeriksa dan Memperbarui Berkas .htaccess
Berkas .htaccess yang korup adalah penyebab paling umum. Kita perlu membuat ulang berkas ini ke konfigurasi default WordPress.
- Buka kembali File Manager, pastikan opsi Show Hidden Files (dotfiles) aktif di pengaturan (Settings).
- Cari file
.htaccessdi direktori root. - Ubah nama file tersebut menjadi
.htaccess_lama(ini berfungsi sebagai backup). - Buat file baru dengan nama
.htaccess. - Masukkan kode default WordPress berikut ke dalamnya:
# BEGIN WordPressRewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress - Simpan file dan akses kembali website Anda. Jika website kembali normal, Anda bisa masuk ke Dashboard admin lalu ke Settings > Permalinks dan klik Save Changes untuk memastikan permalink di-generate ulang dengan sempurna.
Langkah 3: Menonaktifkan Semua Plugin Secara Manual via Database/File Manager
Jika langkah 2 tidak berhasil, kemungkinan ada plugin yang mengalami konflik fatal (Fatal Error PHP).
- Masuk ke folder
wp-contentdi File Manager. - Temukan folder bernama
plugins. - Klik kanan dan ubah namanya (*rename*) menjadi
plugins_deactivated. Tindakan ini akan secara paksa menonaktifkan semua plugin WordPress Anda. - Akses kembali website. Jika website menyala tanpa error 500, maka dipastikan plugin adalah penyebabnya.
- Ubah kembali nama folder
plugins_deactivatedmenjadiplugins. - Masuk ke direktori
pluginstersebut, lalu ubah nama folder plugin di dalamnya satu per satu sambil mengecek website, hingga Anda menemukan plugin spesifik yang memicu kembalinya error 500. Hapus atau perbarui plugin yang bermasalah tersebut.
Langkah 4: Meningkatkan Limit Memori PHP (PHP Memory Limit)
Terkadang skrip yang berjalan membutuhkan memori yang melebihi batas default server Anda, memicu error 500.
- Buka kembali file
wp-config.php. - Tambahkan baris kode ini tepat di bawah tag pembuka
<?php:define( 'WP_MEMORY_LIMIT', '512M' ); - Jika Anda menggunakan cPanel, pastikan juga limit di level server dinaikkan. Masuk ke menu Select PHP Version (atau MultiPHP INI Editor).
- Pilih tab Options, lalu cari opsi
memory_limit. - Ubah nilainya menjadi
512Matau lebih tinggi. Simpan pengaturan.
Dengan mengikuti 4 langkah presisi di atas, 99% kasus Error 500 Internal Server Error di WordPress akan berhasil diselesaikan hingga tuntas.