Penyebab dan Cara Mengatasi Error 500 WordPress

by Dewi Larasati
Penyebab dan Cara Mengatasi Error 500 WordPress

Situs WordPress tiba-tiba putih atau menampilkan pesan "Internal Server Error"? Error 500 adalah salah satu masalah paling umum yang bikin pemilik situs panik — terutama karena pesan error-nya sendiri tidak informatif sama sekali.

Bedanya dengan error lain, error 500 bukan kesalahan klien (browser). Ini berarti server sedang mengalami sesuatu yang parah, dan WordPress tidak bisa menjalankan kode dengan semestinya. Kabar baiknya? Sebagian besar penyebab error 500 WordPress bisa diperbaiki sendiri dalam hitungan menit.

Mengapa Error 500 Terjadi di WordPress?

Error 500 muncul ketika server tidak bisa memproses request dengan normal. Di WordPress, ini biasanya disebabkan oleh:

Plugin atau tema yang bermasalah — Ini penyebab nomor satu. Plugin baru yang Anda install kemarin, atau update tema yang salah konfigurasi, bisa memicu error 500 dalam sekejap. WordPress mencoba menjalankan kode dari plugin tersebut, tapi kodenya cacat atau tidak kompatibel dengan versi PHP di server Anda.

Batas memori PHP yang kehabisan — Setiap situs WordPress memiliki memory limit (biasanya 40-256 MB tergantung paket hosting). Ketika plugin atau query database membutuhkan lebih banyak memori dari limit yang ditetapkan, server akan stop dan menampilkan error 500.

Versi PHP yang terlalu lama atau terlalu baru — Plugin lama tidak kompatibel dengan PHP 8.0+, atau sebaliknya, tema baru membutuhkan versi PHP yang lebih tinggi dari yang ada di server Anda.

File .htaccess yang corrupt — File ini mengontrol cara server menangani request. Jika rusak atau berisi konfigurasi salah, error 500 bisa muncul.

Timeout pada koneksi database — Jika koneksi ke database MySQL terganggu atau lambat, WordPress tidak bisa menyelesaikan proses dan akan throw error 500.

Langkah Pertama: Aktifkan Debug Mode

Sebelum mencoba perbaikan, Anda perlu melihat pesan error yang sebenarnya. WordPress menyembunyikan detail error di frontend untuk alasan keamanan, tapi Anda bisa mengaktifkan debug mode di backend.

Buka file wp-config.php menggunakan FTP atau file manager hosting Anda. Cari baris:

define('WP_DEBUG', false);

Ganti dengan:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

Simpan file. Sekarang WordPress akan menulis log error ke file wp-content/debug.log. Akses file ini via FTP dan lihat pesan error spesifiknya. Pesan ini akan menunjukkan plugin atau file mana yang bermasalah.

⚠️ Penting: Jangan biarkan WP_DEBUG_DISPLAY tetap true di situs live. Ini akan menampilkan error ke pengunjung dan membuka celah keamanan.

Nonaktifkan Semua Plugin

Jika debug log menunjukkan error tapi tidak jelas plugin mana, langkah termudah adalah menonaktifkan semua plugin sekaligus.

Gunakan FTP atau file manager, masuk ke folder wp-content/. Rename folder plugins menjadi plugins-old. Ini akan menonaktifkan semua plugin tanpa menghapusnya.

Coba akses situs Anda. Jika error 500 hilang, berarti penyebabnya adalah salah satu plugin.

Sekarang rename folder kembali menjadi plugins. Masuk ke WordPress admin (jika bisa), atau edit file wp-config.php lagi dan tambahkan baris ini:

define('WP_DISABLE_FATAL_ERROR_HANDLER', false);

Kemudian aktifkan plugin satu per satu dan test situs setelah setiap aktivasi. Saat error 500 muncul lagi, Anda sudah tahu plugin mana yang bersalah. Nonaktifkan plugin tersebut dan hubungi developer-nya, atau cari alternatif lain.

Periksa Batas Memori PHP

Jika semua plugin sudah dinonaktifkan tapi error masih ada, masalahnya mungkin batas memori.

Edit wp-config.php dan tambahkan baris ini di atas baris /* That's all, stop editing! */:

define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');

Nilai ini bisa disesuaikan, tapi 256M sudah cukup untuk sebagian besar situs kecil-menengah. Jika hosting Anda tidak mengizinkan lebih dari 128M, hubungi support hosting.

Simpan dan test situs lagi.

Perbaiki File .htaccess

File .htaccess sering corrupt setelah update WordPress atau perubahan plugin. Cara memperbaikinya:

  1. Akses file manager hosting, buka folder root situs WordPress Anda.
  2. Cari file .htaccess (mungkin tersembunyi, aktifkan "Show Hidden Files").
  3. Hapus atau rename file tersebut menjadi .htaccess-old.
  4. Masuk ke WordPress admin → Settings → Permalinks.
  5. Klik tombol "Save Changes" tanpa mengubah apapun. WordPress akan membuat file .htaccess baru yang valid.

⚠️ Catatan: Jika Anda menggunakan custom rewrite rules, catat dulu sebelum menghapus .htaccess lama.

Periksa Versi PHP

Buka WordPress admin → Tools → Site Health. Tab "Info" akan menunjukkan versi PHP yang digunakan. Jika Anda ingin menyiapkan environment pengembangan lokal yang lebih terkontrol, panduan nodejs development environment setup dari devbox.id bisa memberi gambaran bagaimana mengelola versi runtime dengan lebih rapi.

Cek apakah plugin atau tema Anda membutuhkan versi PHP yang berbeda. Jika plugin membutuhkan PHP 7.4+ tapi server Anda masih PHP 7.2, itu akan error.

Hubungi hosting dan minta upgrade PHP ke versi stabil terbaru (minimal PHP 7.4, lebih baik 8.0+). Ini juga meningkatkan keamanan situs.

Koneksi Database Bermasalah

Jika error log menunjukkan pesan seperti "Error establishing a database connection", masalahnya bukan error 500 murni tapi koneksi database.

Verifikasi kredensial database di wp-config.php:

define('DB_NAME', 'nama_database');
define('DB_USER', 'username');
define('DB_PASSWORD', 'password');
define('DB_HOST', 'localhost');

Pastikan semua nilai benar. Beberapa hosting menggunakan 127.0.0.1 atau nama host custom, bukan localhost. Cek dokumentasi hosting atau panel kontrol Anda.

Jika kredensial benar tapi tetap error, database server mungkin down. Hubungi support hosting.

Kapan Harus Hubungi Support Hosting?

Jika Anda sudah mencoba semua langkah di atas tapi error 500 masih muncul, kemungkinan masalahnya di level server:

  • Disk space penuh
  • Server resource (CPU/RAM) habis
  • Konfigurasi server yang salah
  • Masalah pada level Apache/Nginx

Hubungi support hosting dan berikan screenshot debug.log Anda. Mereka bisa melihat error di server logs yang tidak bisa Anda akses.

Ringkasan Langkah-Langkah

  1. Aktifkan debug mode dan baca debug.log
  2. Nonaktifkan semua plugin untuk isolasi masalah
  3. Naikkan batas memori PHP ke 256M
  4. Perbaiki .htaccess dengan cara di atas
  5. Periksa versi PHP dan kompatibilitas plugin
  6. Verifikasi kredensial database
  7. Hubungi support hosting jika masalah persisten

Error 500 WordPress terasa menakutkan, tapi 90% kasus bisa diselesaikan dengan langkah-langkah di atas. Jika situs Anda menggunakan platform ecommerce dan sering mengalami masalah performa, mungkin saatnya mempertimbangkan arsitektur yang lebih modern — the comparison on storehabit.com membahas pilihan headless CMS yang bisa mengurangi beban server secara signifikan. Jangan langsung panic atau bayar konsultan — coba sendiri dulu, dan catat apa yang Anda temukan. Pengalaman ini juga akan membuat Anda lebih paham cara kerja WordPress.