Memahami Error 504 Gateway Timeout dan Memory Exhausted Limit
Error 504 Gateway Timeout pada WordPress umumnya terjadi ketika server membutuhkan waktu terlalu lama untuk merespons permintaan. Seringkali, masalah ini berkaitan langsung dengan Fatal Error: Allowed memory size exhausted, di mana skrip PHP pada WordPress (biasanya dari plugin atau tema berat) mengonsumsi memori melebihi batas yang diizinkan oleh server.
Berikut adalah prosedur teknis step-by-step untuk mengatasi kedua masalah ini secara tuntas.
Langkah 1: Menambah Kapasitas PHP Memory Limit via wp-config.php
Langkah pertama dan paling efektif untuk mengatasi "Memory Exhausted" adalah dengan meningkatkan batas memori PHP pada file konfigurasi utama WordPress.
- Akses file website Anda menggunakan File Manager di cPanel atau melalui koneksi FTP/SFTP (seperti FileZilla).
- Buka direktori utama instalasi WordPress Anda (biasanya
public_html). - Cari file bernama
wp-config.php. Klik kanan dan pilih Edit. - Temukan baris teks yang bertuliskan:
/* That's all, stop editing! Happy publishing. */. - Tepat sebelum baris tersebut, tambahkan kode berikut:
define( 'WP_MEMORY_LIMIT', '256M' );
(Anda bisa mengubah 256M menjadi 512M jika server Anda memiliki RAM yang besar). - Simpan perubahan (Save) pada file tersebut. Muat ulang website Anda untuk melihat apakah error sudah teratasi.
Langkah 2: Menyesuaikan Konfigurasi php.ini atau .htaccess
Jika modifikasi pada wp-config.php tidak membuahkan hasil, pembatasan mungkin terjadi di level konfigurasi server (PHP). Anda harus mengaturnya via php.ini atau .htaccess.
Opsi A: Menggunakan .htaccess
- Masih di folder utama WordPress, cari file
.htaccess(pastikan opsi "Show hidden files" aktif). - Edit file tersebut dan tambahkan baris berikut di bagian paling bawah:
php_value memory_limit 256Mphp_value max_execution_time 300 - Simpan perubahan. Aturan
max_execution_time 300akan mencegah error 504 dengan memberikan waktu eksekusi script hingga 300 detik.
Opsi B: Melalui cPanel (MultiPHP INI Editor)
- Login ke cPanel, cari menu MultiPHP INI Editor.
- Pilih domain yang bermasalah.
- Ubah nilai parameter berikut:
memory_limit: 256M atau 512Mmax_execution_time: 300
- Klik Apply.
Langkah 3: Mengisolasi Plugin yang Bermasalah (Troubleshooting)
Jika memori sudah ditingkatkan namun Error 504 masih terjadi, penyebabnya kemungkinan adalah plugin yang corrupt atau mengalami infinite loop.
- Masuk ke File Manager atau FTP. Buka folder
wp-content. - Cari folder bernama
plugins. Rename folder tersebut menjadiplugins_disable. (Ini akan mematikan semua plugin secara paksa). - Buka website Anda. Jika website bisa diakses dan error 504 hilang, berarti salah satu plugin adalah penyebabnya.
- Kembalikan nama folder menjadi
plugins. - Masuk ke dalam folder
pluginstersebut, lalu rename folder plugin satu per satu (misalnya darielementormenjadielementor_off) sambil mengecek website setiap kali Anda merename folder. - Jika Anda menemukan plugin penyebab error setelah merename foldernya, biarkan plugin tersebut dinonaktifkan, lalu cari alternatif plugin atau hubungi developer plugin tersebut.
Langkah 4: Optimasi Database WordPress
Database yang sangat besar (banyak spam comments, post revisions, atau transients) dapat memperlambat query server hingga menyebabkan Gateway Timeout.
- Buka phpMyAdmin dari control panel hosting Anda.
- Pilih database yang digunakan oleh WordPress Anda.
- Pilih (centang) semua tabel yang ada.
- Pada menu drop-down di bagian bawah, pilih opsi Optimize table.
- Untuk optimasi otomatis ke depannya, gunakan plugin seperti WP-Optimize (setelah website kembali normal).
Langkah 5: Berkomunikasi dengan Penyedia Hosting
Jika semua langkah di atas telah dilakukan dan Anda masih menghadapi error 504 Gateway Timeout, batasan mungkin berada pada infrastruktur server hosting itu sendiri (misalnya limit pada Nginx proxy atau firewall). Segera buat tiket dukungan (Support Ticket) ke penyedia hosting Anda dengan menyertakan detail langkah perbaikan yang telah Anda coba.