15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai
28.10.2024

Error 504 Gateway Timeout: Apa Itu dan Cara Memperbaikinya

Kesalahan 504 Gateway Timeout adalah kode status HTTP yang terjadi ketika satu server gagal menerima respons tepat waktu dari server lain saat memproses permintaan. Dalam istilah praktis, ini berarti server upstream membutuhkan waktu terlalu lama untuk merespons, menyebabkan gateway atau proxy menyerah dan mengembalikan kesalahan kepada pengguna akhir.

Panduan komprehensif ini menjelaskan secara tepat apa itu kesalahan 504 Gateway Timeout, apa penyebabnya, dan — yang paling penting — cara memperbaikinya, baik Anda pengunjung biasa maupun administrator server yang bertanggung jawab menjaga situs tetap online.

Apa Itu Kesalahan 504 Gateway Timeout?

Ketika sebuah server bertindak sebagai gateway atau reverse proxy — meneruskan permintaan ke server upstream — server tersebut mengharapkan respons dalam jangka waktu yang telah ditentukan. Jika server upstream tidak merespons tepat waktu, gateway mengembalikan kode status 504 kepada klien.

Ini berbeda dari 502 Bad Gateway (yang menunjukkan respons tidak valid) atau 503 Service Unavailable (yang menandakan server sedang tidak aktif sementara). 504 secara khusus berarti gateway *kehabisan waktu* menunggu respons yang valid.

Variasi Umum Pesan Kesalahan

Tergantung pada perangkat lunak server, browser, atau CDN yang digunakan, Anda mungkin melihat kesalahan ini ditampilkan sebagai:

  • 504 Gateway Timeout
  • HTTP Error 504
  • Gateway Timeout Error
  • Error 504: Gateway Timeout
  • 504 Gateway Time-out *(umum di Nginx)*
  • A 504 error occurred *(umum di lingkungan Cloudflare)*

Terlepas dari redaksinya, semua ini menunjuk pada masalah yang sama: timeout dalam komunikasi antar server.

Penyebab Umum Kesalahan 504 Gateway Timeout

Kesalahan 504 hampir selalu merupakan masalah sisi server, artinya berasal dari infrastruktur bukan dari browser atau perangkat pengguna. Memahami akar penyebabnya sangat penting untuk menerapkan perbaikan yang tepat.

1. Server Kelebihan Beban

Ketika server kewalahan oleh lonjakan traffic mendadak atau jumlah permintaan bersamaan yang berlebihan, server mungkin tidak dapat memproses dan merespons dalam jangka waktu timeout yang dikonfigurasi. Ini adalah salah satu penyebab paling umum kesalahan 504 pada situs web dengan traffic tinggi.

Tanda-tanda yang perlu diperhatikan: Penggunaan CPU yang tinggi, kehabisan memori, antrean permintaan yang panjang dalam log server.

2. Masalah Konektivitas Jaringan Antar Server

Masalahnya mungkin bukan pada salah satu server secara individual, tetapi pada jalur jaringan di antara keduanya. Kehilangan paket, kegagalan routing, atau lonjakan latensi antara gateway dan server upstream semuanya dapat memicu timeout.

Tanda-tanda yang perlu diperhatikan: Kesalahan yang tidak menentu, kesalahan yang berkorelasi dengan wilayah geografis atau pusat data tertentu.

3. Masalah Resolusi DNS

Jika catatan DNS salah dikonfigurasi, kedaluwarsa, atau belum sepenuhnya terpropagasi setelah migrasi server, gateway mungkin gagal menyelesaikan alamat server upstream — mengakibatkan timeout bahkan sebelum koneksi dibuat.

Tanda-tanda yang perlu diperhatikan: Kesalahan 504 muncul segera setelah transfer domain atau migrasi server.

4. Firewall yang Salah Dikonfigurasi atau Terlalu Ketat

Firewall yang terlalu agresif dapat secara diam-diam membuang paket antar server, mencegah respons server upstream mencapai gateway. Ini adalah masalah umum di lingkungan server yang diperkuat di mana aturan firewall belum diperbarui untuk memperhitungkan jalur komunikasi server-ke-server yang baru.

Tanda-tanda yang perlu diperhatikan: Kesalahan 504 yang hanya memengaruhi jenis permintaan atau rentang IP tertentu.

5. Kesalahan Konfigurasi Proxy Server atau CDN

Jika situs web Anda merutekan traffic melalui proxy server atau Content Delivery Network (CDN) seperti Cloudflare, Sucuri, atau Fastly, kesalahan konfigurasi atau penundaan apa pun pada lapisan tersebut dapat menghasilkan kesalahan 504 bahkan sebelum permintaan mencapai server asal Anda.

Tanda-tanda yang perlu diperhatikan: Kesalahan 504 yang menghilang ketika CDN dilewati.

6. Aplikasi Upstream yang Lambat atau Tidak Responsif

Jika server Anda bergantung pada API eksternal, database, atau layanan mikro yang membutuhkan waktu terlalu lama untuk merespons, gateway akan kehabisan waktu menunggu hasilnya. Ini semakin umum dalam arsitektur web modern yang mengandalkan integrasi pihak ketiga.

Tanda-tanda yang perlu diperhatikan: Kesalahan 504 yang berkorelasi dengan halaman atau fitur tertentu yang mengandalkan sumber data eksternal.

7. Pengaturan Timeout yang Terlalu Singkat

Terkadang proses upstream berfungsi dengan benar tetapi membutuhkan waktu lebih lama dari yang diizinkan oleh timeout yang dikonfigurasi server. Jika proxy_read_timeout atau direktif serupa diatur terlalu konservatif, permintaan yang sah akan dipotong sebelum waktunya.

Cara Memperbaiki Kesalahan 504 Gateway Timeout

Perbaikan yang tepat bergantung pada apakah Anda seorang pengunjung yang mengalami kesalahan atau administrator server yang bertanggung jawab atas infrastruktur yang terpengaruh.

Untuk Pengunjung: Langkah Pemecahan Masalah Cepat

Jika Anda pengguna biasa yang melihat kesalahan 504, masalahnya hampir pasti ada di sisi server — tetapi ada beberapa hal yang dapat Anda coba:

#### 1. Muat Ulang Halaman

Tekan F5 atau klik tombol muat ulang browser. Jika server sesaat kelebihan beban, muat ulang sederhana mungkin berhasil setelah beban berkurang.

#### 2. Hard Refresh

Coba hard refresh (Ctrl+Shift+R di Windows/Linux, Cmd+Shift+R di macOS) untuk melewati cache browser dan memaksa permintaan baru ke server.

#### 3. Hapus Cache dan Cookie Browser

Data cache yang kedaluwarsa terkadang dapat mengganggu komunikasi server. Hapus cache dan cookie browser Anda melalui Pengaturan → Privasi dan Keamanan, lalu coba lagi.

#### 4. Periksa Koneksi Internet Anda

Verifikasi bahwa koneksi Anda sendiri stabil. Koneksi yang tidak stabil terkadang dapat mencegah komunikasi yang tepat dengan server, memperburuk masalah timeout yang sudah ada.

#### 5. Coba Jaringan atau Perangkat Lain

Beralih ke data seluler atau jaringan Wi-Fi yang berbeda. Jika kesalahan menghilang, masalahnya mungkin terkait dengan ISP atau konfigurasi jaringan lokal Anda daripada server itu sendiri.

#### 6. Tunggu dan Coba Lagi

Kesalahan 504 sering kali bersifat sementara. Jika server sedang dalam beban sementara, menunggu 5–10 menit dan mencoba lagi sering kali merupakan tindakan yang paling efektif.

Untuk Administrator Server: Perbaikan Mendalam

Jika Anda mengelola server atau situs web yang mengalami kesalahan 504, diperlukan pendekatan yang lebih sistematis.

#### 1. Periksa Utilisasi Sumber Daya Server

Mulailah dengan meninjau konsumsi sumber daya server Anda saat ini. CPU yang tinggi, kehabisan memori, atau disk yang penuh semuanya dapat mencegah server memproses permintaan tepat waktu.

# Check CPU and memory usage
top
htop

# Check disk usage
df -h

# Review recent system logs
tail -f /var/log/syslog
journalctl -xe

Solusi: Jika server Anda secara konsisten berada di bawah beban berat, pertimbangkan untuk meningkatkan ke paket yang lebih bertenaga. VPS Hosting dari AlexHost menyediakan sumber daya yang dapat diskalakan yang dapat disesuaikan seiring pertumbuhan traffic Anda, sementara Dedicated Server menawarkan performa maksimum untuk lingkungan dengan permintaan tinggi.

#### 2. Mulai Ulang Web Server dan Layanan Aplikasi

Mulai ulang proses web server yang terkontrol dapat membersihkan worker yang macet, membebaskan memori, dan menyelesaikan masalah sementara.

# Restart Nginx
sudo systemctl restart nginx

# Restart Apache
sudo systemctl restart apache2

# Restart PHP-FPM (if applicable)
sudo systemctl restart php8.1-fpm

Penting: Selalu periksa log sebelum dan sesudah memulai ulang untuk mengonfirmasi apakah mulai ulang menyelesaikan masalah.

#### 3. Tingkatkan Batas Timeout Server

Jika permintaan yang sah dipotong karena membutuhkan waktu lebih lama dari yang diizinkan oleh timeout default, tingkatkan direktif timeout yang relevan dalam konfigurasi server Anda.

Untuk Nginx (/etc/nginx/nginx.conf atau blok server situs Anda):

proxy_connect_timeout   300;
proxy_send_timeout      300;
proxy_read_timeout      300;
send_timeout            300;

Untuk Apache (/etc/apache2/apache2.conf atau .htaccess):

Timeout 300
ProxyTimeout 300

Untuk PHP-FPM (/etc/php/8.1/fpm/pool.d/www.conf):

request_terminate_timeout = 300

Setelah membuat perubahan, selalu muat ulang atau mulai ulang layanan:

sudo nginx -t && sudo systemctl reload nginx
# or
sudo apachectl configtest && sudo systemctl reload apache2

#### 4. Selidiki dan Selesaikan Masalah DNS

Jika kesalahan 504 muncul setelah migrasi server, transfer domain, atau perubahan catatan DNS, propagasi DNS mungkin belum selesai atau catatan mungkin menunjuk ke server yang salah.

Langkah-langkah untuk mendiagnosis:

# Check current DNS resolution
dig yourdomain.com
nslookup yourdomain.com

# Check from a specific DNS server
dig @8.8.8.8 yourdomain.com

Gunakan alat online seperti DNS Checker untuk memverifikasi status propagasi global.

Solusi: Pastikan catatan A dan catatan CNAME Anda menunjuk ke alamat IP yang benar. Jika Anda baru saja mendaftarkan atau mentransfer domain, tunggu hingga 48 jam untuk propagasi penuh. Layanan Registrasi Domain AlexHost mencakup alat manajemen DNS untuk membantu Anda menjaga catatan tetap akurat dan terkini.

#### 5. Tinjau Aturan Firewall dan Pengaturan Keamanan

Firewall yang memblokir komunikasi antar server adalah penyebab umum namun sering diabaikan dari kesalahan 504. Periksa log firewall Anda untuk koneksi yang dibuang atau ditolak.

# Check UFW logs (Ubuntu/Debian)
sudo ufw status verbose
sudo tail -f /var/log/ufw.log

# Check iptables rules
sudo iptables -L -n -v

# Check firewalld (CentOS/RHEL)
sudo firewall-cmd --list-all

Solusi: Identifikasi aturan apa pun yang mungkin memblokir traffic antara gateway dan server upstream Anda, dan perbarui untuk mengizinkan komunikasi yang diperlukan. Berhati-hatilah untuk tidak membuka port yang tidak perlu — terapkan prinsip hak akses minimal.

#### 6. Debug Konfigurasi Proxy dan CDN

Jika situs Anda menggunakan reverse proxy (seperti Nginx yang bertindak sebagai proxy untuk aplikasi Node.js atau Python) atau CDN, verifikasi bahwa konfigurasi proxy sudah benar dan server asal dapat dijangkau.

Untuk reverse proxy Nginx, verifikasi blok upstream:

upstream backend {
    server 127.0.0.1:3000;
    keepalive 32;
}

server {
    location / {
        proxy_pass http://backend;
        proxy_http_version 1.1;
        proxy_set_header Connection "";
        proxy_read_timeout 300;
    }
}

Untuk kesalahan 504 terkait CDN:

  • Sementara lewati CDN dengan mengakses situs langsung melalui alamat IP-nya untuk menentukan apakah CDN atau server asal yang menjadi sumber masalah.
  • Tinjau pengaturan timeout asal CDN — banyak CDN memiliki nilai timeout yang dapat dikonfigurasi sendiri yang harus diselaraskan dengan pengaturan server Anda.
  • Periksa halaman status CDN untuk insiden yang sedang berlangsung.

#### 7. Optimalkan Kueri Database yang Lambat dan Kode Aplikasi

Jika kesalahan 504 disebabkan oleh aplikasi upstream yang lambat — seperti kueri database yang membutuhkan waktu terlalu lama — perbaikannya terletak pada optimasi tingkat aplikasi daripada konfigurasi server.

Langkah-langkah untuk menyelidiki:

  • Aktifkan pencatatan kueri lambat di MySQL/MariaDB:
SET GLOBAL slow_query_log = 'ON';
SET GLOBAL long_query_time = 2;
  • Tinjau alat pemantauan performa aplikasi (APM) seperti New Relic, Datadog, atau alternatif open-source seperti Netdata.
  • Tambahkan indeks database ke kolom yang sering dikueri.
  • Implementasikan caching (Redis, Memcached) untuk mengurangi jumlah panggilan database yang mahal.

#### 8. Pantau Kesehatan Server Secara Proaktif

Pemecahan masalah reaktif kurang efektif dibandingkan pemantauan proaktif. Siapkan peringatan untuk ambang batas CPU, memori, disk I/O, dan waktu respons sehingga Anda dapat mengidentifikasi dan mengatasi masalah sebelum mengakibatkan kesalahan 504 bagi pengunjung Anda.

Jika lingkungan hosting Anda saat ini kekurangan sumber daya atau fleksibilitas untuk mengimplementasikan optimasi ini, mungkin sudah saatnya mempertimbangkan peningkatan. Paket VPS dengan cPanel AlexHost menawarkan antarmuka manajemen yang intuitif bersama performa mentah server virtual privat — memudahkan pemantauan dan pengelolaan server Anda tanpa keahlian baris perintah yang mendalam.

504 vs. Kesalahan Gateway Umum Lainnya

Memahami bagaimana 504 berbeda dari kesalahan HTTP terkait membantu Anda mendiagnosis masalah dengan lebih akurat:

Kode KesalahanNamaArti
502Bad GatewayServer upstream mengembalikan respons yang tidak valid
503Service UnavailableServer sementara tidak dapat menangani permintaan
504Gateway TimeoutGateway kehabisan waktu menunggu server upstream
408Request TimeoutKlien membutuhkan waktu terlalu lama untuk mengirim permintaan lengkap
524A Timeout OccurredKhusus Cloudflare; server asal kehabisan waktu

Mencegah Kesalahan 504: Praktik Terbaik

Daripada menunggu kesalahan 504 terjadi lalu bereaksi, terapkan praktik terbaik ini untuk meminimalkan kemungkinannya:

  • Sesuaikan ukuran sumber daya server Anda — pastikan paket hosting Anda dapat menangani traffic yang diharapkan, termasuk beban puncak.
  • Gunakan load balancer — distribusikan traffic ke beberapa server untuk mencegah satu server menjadi hambatan.
  • Implementasikan caching secara agresif — gunakan caching halaman penuh, caching objek, dan caching edge CDN untuk mengurangi jumlah permintaan yang mencapai server asal Anda.
  • Tetapkan nilai timeout yang realistis — konfigurasikan timeout yang mencerminkan waktu pemrosesan aktual yang dibutuhkan aplikasi Anda, bukan default yang sembarangan.
  • Pantau kesehatan DNS — verifikasi secara berkala bahwa catatan DNS Anda benar dan nilai TTL sudah sesuai.
  • Perbarui perangkat lunak secara rutin — perangkat lunak web server yang kedaluwarsa, versi PHP, atau plugin CMS dapat menimbulkan hambatan performa yang berkontribusi pada timeout.
  • Amankan server Anda dengan benar — sertifikat SSL yang dikonfigurasi dengan baik tidak hanya melindungi pengguna Anda tetapi juga memastikan koneksi terenkripsi antar server tidak menimbulkan penundaan handshake yang tidak terduga. Sertifikat SSL AlexHost mudah diterapkan dan membantu menjaga komunikasi server yang aman dan efisien.

Kesimpulan

Kesalahan 504 Gateway Timeout adalah masalah sisi server yang terjadi ketika gateway atau proxy gagal menerima respons tepat waktu dari server upstream. Meskipun dapat membuat frustrasi bagi pengunjung, hampir selalu dapat didiagnosis dan diperbaiki dengan pendekatan yang tepat.

Untuk pengunjung, langkah segera terbaik adalah memuat ulang halaman, menghapus cache Anda, dan menunggu beberapa menit sebelum mencoba lagi.

Untuk administrator server, perbaikannya memerlukan penyelidikan sistematis: periksa utilisasi sumber daya server, tinjau konfigurasi timeout, audit aturan firewall, verifikasi catatan DNS, dan optimalkan kode aplikasi atau kueri database yang lambat.

Memilih penyedia hosting yang andal dengan infrastruktur yang kuat adalah cara paling efektif untuk mengurangi frekuensi kesalahan 504. Baik Anda membutuhkan VPS Hosting yang dapat diskalakan, Dedicated Server berperforma tinggi, atau Shared Web Hosting tingkat pemula, AlexHost menyediakan infrastruktur, dukungan, dan alat untuk menjaga situs web Anda tetap cepat, stabil, dan dapat diakses sepanjang waktu.

15%

Hemat 15% di Semua Layanan Hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode:

Skills
Memulai