Error 500
Error 500 Internal Server Error berarti server gagal memproses request tapi tidak menyebutkan alasannya di browser. Halaman yang muncul selalu generik. Pesan aslinya tersimpan di log, sehingga menangani 500 tanpa membuka log sama dengan menebak.
Log menyimpan pesan aslinya
Permintaan masuk ke web server lalu diteruskan ke aplikasi PHP. Saat aplikasi menemui kondisi yang tidak bisa ditangani, misalnya fungsi yang hilang atau skrip yang dihentikan, tidak ada halaman yang dihasilkan dan web server membalas dengan status 500. Detailnya ada di tempat lain. Di cPanel buka menu error log, di VPS umumnya di /var/log/, dan untuk PHP-FPM cek log pool-nya. Untuk WordPress, aktifkan WP_DEBUG lalu baca wp-content/debug.log. Setelah menemukan pesan pertamanya, carilah baris terakhir tepat sebelum crash, karena di sana nama file dan nomor baris biasanya tercetak.
Tiga penyebab paling sering
Pertama, fatal error PHP: satu plugin atau tema memanggil fungsi yang tidak lagi ada, atau kode lama dipaksa jalan di versi PHP baru. Kedua, .htaccess rusak: satu aturan rewrite yang salah membuat web server menolak memproses, penyebab klasik seusai memasang plugin keamanan. Ketiga, koneksi database gagal: wp-config.php masih menunjuk kredensial lama seusai migrasi, jadi aplikasi tidak punya data untuk ditampilkan. Satu pemicu lain yang tak kalah sering adalah file inti yang hilang atau korup seusai upload yang terpotong di tengah jalan.
Cara mempersempit dengan cepat
Urutkan dari perubahan terakhir. Ingat apa yang baru Anda sentuh: update plugin, ganti versi PHP, atau impor file. Mundurkan satu perubahan itu, lalu muat ulang halaman. Kalau 500 hanya muncul di satu halaman, periksa kode yang dipakai halaman itu, biasanya form atau checkout. Kalau muncul di semua halaman seusai pindah hosting, curigai konfigurasi database atau versi PHP. Catat juga waktu kemunculan pertamanya, lalu cocokkan dengan log update panel untuk menemukan tersangkanya.
Jangan tertukar dengan 503 atau 429
Ketiganya sering dicampur. Error 503 berarti server hidup tapi sedang tidak sanggup melayani, biasanya beban atau maintenance, bukan kode rusak. Error 429 berarti request Anda kena rate limit. Catat kode status yang benar-benar tampil, karena penanganannya berbeda. Halaman 500 generik tidak akan pernah memberi Anda sebabnya, jadi kembali ke log.
FAQ
Apakah 500 merusak SEO?
Kalau berlangsung lama, ya. Google bisa menganggap halaman tidak tersedia dan menundanya dari crawl. 500 singkat seusai perubahan biasanya dimaafkan.
Kenapa hanya halaman tertentu yang 500?
Karena hanya halaman itu memanggil kode yang bermasalah, umumnya halaman dengan form atau yang dibuat plugin tertentu. Ini justru menyempitkan penyelidikan.
Bolehkah menaikkan memory_limit lebih dulu?
Kadang memang itu solusinya. Tapi kalau plugin rakus memori, Anda hanya menunda ledakan. Cek log dan temukan sumbernya sebelum menaikkan batas.
Disclaimer: Artikel WikiHosting disusun untuk tujuan edukasi dan referensi. Teknologi hosting terus berkembang, sehingga beberapa informasi teknis mungkin berubah seiring waktu.
