Beranda/Blog/Fix CyberPanel 503

Cara mengatasi CyberPanel 503 Service Unavailable (panel dan website)

Diperbarui 28 Oktober 2026Oleh Dr. S10 menit baca

503 Service Unavailable di server CyberPanel berarti sebuah front-end menerima request tetapi yang di belakangnya tidak menjawab. Ada dua "yang di belakang" yang sangat berbeda, dan perbaikannya bergantung sepenuhnya pada yang mana yang Anda hadapi:

Panduan ini membahas keduanya, dengan urutan yang akan dipakai admin senior. Semua di sini read-only sampai bagian yang menyatakan sebaliknya.

Sebelum apa pun: disk, inode, memori

Kebanyakan 503 yang muncul "tiba-tiba" punya penyebab membosankan. Periksa tiga hal ini dalam sepuluh detik:

df -h /          # ruang disk
df -i /          # inode (bisa 100% walau ruang masih ada)
free -m          # RAM dan swap
dmesg -T | grep -iE "out of memory|killed process" | tail

Jika disk atau inode 100%, tidak ada langkah di bawah yang akan bekerja andal dan paket apa pun yang Anda reinstall bisa tertulis corrupt. Bersihkan disk dengan aman dulu. Jika dmesg menunjukkan OOM killer menghabisi lsphp, gunicorn, atau mariadbd, masalah Anda adalah memori, bukan konfigurasi; tambahkan swap dan tuning worker setelah service kembali.

503 di panel (port 8090)

1. Periksa unit

systemctl status lscpd --no-pager
journalctl -xeu lscpd -n 60 --no-pager
tail -n 50 /usr/local/lscp/logs/error.log

Yang Anda lihat menentukan perbaikannya:

Isi logPenyebab sebenarnyaFix
inactive (dead), tanpa errorPanel memang tidak berjalansystemctl enable --now lscpd
ModuleNotFoundError / ImportError: No module named psutilVenv panel kehilangan modul, sering setelah apt upgrade mengubah PythonLihat panduan lscpd / psutil
invalid ELF header, undefined symbolModul terkompilasi corrupt (biasanya tertulis saat disk penuh)Bersihkan disk, lalu /usr/local/CyberCP/bin/pip install --force-reinstall --no-cache-dir <modul>
Address already in useAda yang memegang 8090, atau gunicorn basiss -ltnp 'sport = :8090', matikan proses basi, restart
OperationalError: Can't connect to MySQLMariaDB mati; panel tidak bisa start tanpa databasenyasystemctl restart mariadb, periksa journal-nya jika gagal
status=11/SEGVBinary atau library crashReinstall paket yang crash setelah cek disk

2. Kasus sementara: restart bersih

Jika journal tidak menunjukkan error nyata, lakukan restart penuh, bukan restart biasa, agar worker gunicorn dan PID file basi tidak tertinggal:

systemctl reset-failed lscpd
pkill -9 -f "gunicorn.*CyberCP" 2>/dev/null
rm -f /usr/local/lscp/lscpd.pid
systemctl start lscpd
systemctl is-active lscpd

3. Kasus venv

Pastikan apakah Python milik panel bisa import Django dan psutil:

/usr/local/CyberCP/bin/python -c "import django, psutil; print('ok')"

Jika gagal, perbaikannya ada di dalam venv, jangan pernah dengan pip3 sistem (itu memasang ke Python yang salah). Memperbaiki satu modul itu level 2; rebuild seluruh venv itu level 3 dan butuh backup /usr/local/CyberCP/lib dulu. Langkah-langkahnya ada di panduan khusus.

4. Kasus skrip upgrade

Saat panel rusak karena upgrade yang setengah jalan, menjalankan ulang skrip upgrade resmi memperbaiki venv dan file tanpa menyentuh website dan database Anda. Buat snapshot /usr/local/CyberCP dan /usr/local/lsws/conf dulu dan siapkan beberapa menit downtime panel:

sh <(curl https://raw.githubusercontent.com/usmannasir/cyberpanel/stable/preUpgrade.sh || wget -O - https://raw.githubusercontent.com/usmannasir/cyberpanel/stable/preUpgrade.sh)

Jangan pakai skrip upgrade untuk "downgrade" ke versi lama. Migrasi database tidak bisa dibalik dan panel berakhir setengah termigrasi. Jika butuh versi lama, pulihkan snapshot yang Anda buat sebelum upgrade.

503 di website

Jika panel terbuka tetapi sebuah situs menjawab 503, OpenLiteSpeed tidak mendapat respons dari backend PHP situs itu.

1. Apakah OpenLiteSpeed sendiri hidup?

systemctl is-active lsws
tail -n 80 /usr/local/lsws/logs/error.log

Jika lsws berstatus failed, berhenti di sini dan ikuti OpenLiteSpeed tidak mau start.

2. Cari backend PHP-nya

Di error.log baris yang menentukan terlihat seperti No request delivery notification has been received from LSAPI application, connection to [uds://tmp/lshttpd/lsphp.sock] failed, atau Max retries exceeded. Semuanya berarti proses lsphp untuk versi itu mati atau tidak bisa start. Penyebab umum:

3. Restart, lalu uji situsnya langsung

/usr/local/lsws/bin/lswsctrl restart
curl -sk -o /dev/null -w "%{http_code}\n" -H "Host: contoh.com" https://127.0.0.1/

200 atau 301 berarti backend menjawab. 503 setelah restart berarti salah satu penyebab di atas masih ada; kembali ke error.log, yang sekarang punya entri baru untuk request Anda.

Verifikasi perbaikan

"Perintahnya jalan" bukan berarti "sudah beres". Periksa efeknya:

systemctl is-active lscpd lsws mariadb
curl -sk -o /dev/null -w "panel %{http_code}\n" https://127.0.0.1:8090/
for d in $(ls /usr/local/lsws/conf/vhosts/); do
  printf "%-30s " "$d"; curl -sk -o /dev/null -w "%{http_code}\n" -H "Host: $d" https://127.0.0.1/
done

Setiap situs harus menjawab 200, 301, atau 302. Jika ada yang menjawab 500, backend hidup tetapi aplikasinya sendiri rusak (PHP fatal, ekstensi hilang setelah update); itu masalah berbeda dengan panduannya sendiri.

Yang tidak boleh dilakukan

Dr. S

Developer otodidak dan spesialis SEO yang mengelola server CyberPanel dan OpenLiteSpeed untuk tool SaaS-nya sendiri dan situs klien. VPS Medic lahir dari perbaikan yang terus ia lakukan manual di server-server itu.

Biarkan aplikasi yang mendiagnosa

VPS Medic menjalankan persis pengecekan ini secara berurutan, menunjukkan penyebabnya, dan menerapkan fix yang sesuai dengan snapshot dan langkah verifikasi. Dari HP Anda, dalam sekitar satu menit.

Unduh VPS Medic — trial gratis 3 hari