The API request failed with the following error: 500 – Internal Server Error. (CPanel)

The API request failed with the following error: 500 . Oke kita akan bahas tentang pada saat di sisi hosting cpanel akan menambahkan addon domain muncul error seperti ini . dari sisi cpanel hosting memang tidak ada masalah dimana masalah tersebut mungkin berasal dari sisi server hostingnya.

lalu bagaimana kita bisa cek error tersebut ? langkah perbaikan dan bagaimana solved dari sisi kita sebagai penyedia jasa hosting cpanel. simak penjelasan di bawah ini .

Penyebab Teknis Umum (pada server hosting environment)

  1. Apache config (httpd.conf) terlalu besar → parsing lama.
  2. Imunify360 hook aktif di File Manager & API → delay 10–20 detik setiap operasi file.
  3. cpsrvd daemon kehabisan waktu (timeout default 30 detik).
  4. Beban I/O atau memory tinggi di server → cPanel service melambat.
  5. API request (uapi / json-api) timeout karena tidak dapat response tepat waktu.
  6. DNS Cluster bermasalah / Tidak bisa sync ke semua server hosting

Solusi Teknis Aman (untuk root / admin WHM)

Langkah 1 — Restart service penting

/scripts/restartsrv_cpsrvd
/scripts/restartsrv_cpanel
/scripts/restartsrv_httpd

Ini akan menghidupkan ulang service panel & Apache tanpa downtime besar.

Langkah 2 — Rebuild cache & konfigurasi

/scripts/updateuserdatacache
/scripts/rebuildhttpdconf
service httpd restart

Langkah 3 — Nonaktifkan hook Imunify360 sementara

Masalah paling sering justru dari sini.

mv /usr/libexec/imunify360/cpanel_fileman_hook /usr/libexec/imunify360/cpanel_fileman_hook.bak
/scripts/restartsrv_cpsrvd

Kemudian coba add-on domain lagi di cPanel.
Kalau berhasil → berarti memang hook Imunify360 penyebabnya.

Untuk mengaktifkan kembali nanti:

mv /usr/libexec/imunify360/cpanel_fileman_hook.bak /usr/libexec/imunify360/cpanel_fileman_hook
/scripts/restartsrv_cpsrvd

Langkah 4 — Perpanjang timeout cpsrvd

Edit file:

nano /var/cpanel/cpsrvd.conf

Tambahkan atau ubah:

Timeout=90

Lalu restart:

/scripts/restartsrv_cpsrvd

Langkah 5 — Cek beban sistem

Jalankan:

top -n 1 | head -20

dan

df -h

Kalau load average tinggi (>10) atau disk penuh, itu penyebab lain mengapa API timeout.

Langkah 6 — Cek Semua Server Hosting

Kemungkinan dari semua yang kita lakukan masih belum berhasil . dikarenakam DNS cluster berfungsi sebagai sync DNS dari satu ke seluruh sever hosting . Jika kita memiliki lebih dari 5 server hosting kita harus cek satu persatu dengan cara yang sederhana.

Dimana mengeceknya itu hanya dengan ping dari server hosting milik kita ke server dns 1 , dns 2

ping 1xx.xxx.xxx

Jika dari salah satu server hosting ada yang Request Time Out (RTO) ke server dns anda seger pengecekan. bisa dari firewall yang memblokir atau bisa juga dari port yang tertutup . maka dari itu kita white list ip server dns kita di sisi server hosting .

Setelah kita whitelist maka kita coba untuk sync kembali semua server hosting kita di dns clutser atau bisa juga kita menggunakan command sebagai berikut :

/scripts/dnscluster syncall

Jika ingin dari sisi server hosting caranya cukup mudah dari sisi WHM search DNS => di bawah ada Synchronize DNS Records

lalu kita kil pada bagian Synchronize all zones to all servers lalu klik Synchronize . Tunggu hingga proses sync selesai seperti ini :

Jika selesai akan muncul sync all zones ……… Done dimana proses sync sudah berhasil . setelah itu kita bisa add on Kembali di cpanel .

Jadi Kesimpulannya

Kasus

Penyebab Utama

🔒 Imunify360 memblokir koneksi antar-server (API request WHM).
Imunify360 menganggap komunikasi dari server hosting ke DNS Cluster sebagai aktivitas mencurigakan dan otomatis menolak koneksi ke port 2087 (API WHM).

Akibatnya:

  • WHM tidak bisa menghubungi DNS Cluster (ns1/ns2).
  • API json-api/cpanel gagal → muncul HTTP 500 Internal Server Error.
  • Sinkronisasi zona DNS juga macet (timeout).

Solusi

  1. Whitelist IP DNS Cluster di Imunify360 (baik di WHM maupun CLI):
imunify360-agent whitelist ip add <IP_DNS1>
imunify360-agent whitelist ip add <IP_DNS2>

atau lewat WHM → Imunify360 → Settings → Whitelist IPs

2. Sync ulang semua zona DNS:

/scripts/dnscluster syncall --full

atau via WHM → DNS Cluster → Synchronize all zones

3. (Opsional) Tambahkan juga ke firewall whitelist (CSF/firewalld) supaya aman permanen.

Hasil Akhir

  • Server hosting sudah bisa ping ke server DNS.
  • API WHM ke DNS Cluster sukses.
  • Proses addon domain kembali normal.
  • DNS Cluster sudah sinkron penuh dan tampil cepat di WHM.

Singkatnya:

Masalah 500 error dan DNS Cluster loading lama disebabkan oleh Imunify360 memblok koneksi antar-node. Setelah whitelist IP DNS di Imunify360 dan sync ulang zona, semua fungsi kembali normal.

Leave a Comment