Batas Waktu Gateway 504

Arti Batas Waktu Gateway 504, cara server upstream yang lambat memicunya, cara Googlebot menangani batas waktu, serta dampaknya terhadap anggaran crawling dan pengindeksan.

Pertama kali diterbitkan: 28 Jun 2026 · Terakhir diperbarui: 8 Agu 2026 · Advanced
Bahasa
1 sinyal bukti di halaman ini

Batas Waktu Gateway 504 berarti gateway atau proxy (CDN, penyeimbang beban, atau proksi terbalik) tidak menerima respons tepat waktu dari server upstream di belakangnya. Ini adalah batas waktu—berbeda dari 502 (respons buruk) atau 503 (tidak tersedia secara eksplisit). Ini bukan penalti Google, melainkan masalah aksesibilitas. 504 yang terisolasi akan dicoba ulang, tetapi batas waktu yang terus terjadi berada dalam kelompok 429/500/503 yang membuat Googlebot mengurangi crawling dan, jika berlanjut, menghapus halaman dari indeks. Identifikasi hop yang benar-benar mengalami batas waktu sebelum memperbaiki apa pun—waktu respons server (TTFB) adalah pencegahan kuat untuk origin yang lambat, tetapi menaikkan nilai batas waktu bukanlah solusi.

TL;DR — sebuah 504 adalah sebuah gateway/proxy telling Anda server upstream tidak respond di dalam jendela batas waktu — sebuah timeout, distinct dari sebuah 502 (buruk respons) atau sebuah 503 (jelas unavailability). ini adalah sebuah accessibility masalah, tidak sebuah penalty. Timeouts sit di yang sama bucket sebagai 429/500/503: Googlebot backs off ketika ini sees them, dan sustained 504s risk deindexing. durable perbaiki adalah server respons time (TTFB), tidak sebuah lebih lama timeout nilai — raising timeout biasanya masks sebuah upstream yang lambat dan dapat membuat hal worse di bawah muat.

Di mana sebuah 504 originates di permintaan chain

sebuah modern permintaan path looks roughly like: browser → CDN/edge → muat balancer → proksi terbalik (e.g. Nginx) → app server (PHP-FPM, Node, dan seterusnya.) → database / ketiga-party APIs. sebuah 504 adalah generated oleh whichever component adalah menunggu pada satu behind ini ketika -nya timeout expired. itu’s pertama diagnostic pertanyaan: Evidence for this claim A 504 response means a gateway or proxy did not receive a timely response from an upstream server. Scope: RFC 9110 defines the timeout semantics; it does not determine why the upstream response was delayed. Confidence: high · Verified: IETF: RFC 9110 §15.6.5 — 504 Gateway Timeout

  • CDN/edge timing out pada origin → perbaiki adalah origin performa, atau raising CDN’s upstream timeout (dengan hati-hati — see di bawah).
  • muat balancer timing out pada app server → periksa app-server health dan autoscaling.
  • Proksi terbalik timing out pada app proses → lihat Nginx’s proxy_read_timeout / fastcgi_read_timeout dan slow kueri atau proses itu’s sebenarnya behind ini.

Getting layer right penting, karena “perbaiki itu timeout di itu edge” dan “perbaiki itu slow kueri basis data di itu origin” adalah completely berbeda jobs.

Apa penyebab 504s

kode status itself tidak prove sebuah penyebab — ini hanya tells Anda sebuah gateway timed out menunggu pada sebuah upstream. ini adalah biasa suspects worth memeriksa, tidak facts 504 sudah established; konfirmasi dengan logs dan traces sebelum Anda act pada satu:

  • Slow database kueri atau upstream API panggilan. sebuah single unindexed kueri atau sebuah laggy ketiga-party dependency dapat push respons time past timeout.
  • server/app overload dan resource exhaustion. di bawah cukup concurrent muat, permintaan queue, worker memproses fill up, dan respons berhenti arriving di time.
  • Misconfigured timeout nilai di seluruh Nginx, Apache, muat balancer, atau CDN — sering mismatched antara layers so satu memberikan up sebelum lainnya.
  • Traffic spikes, bot floods, atau DDoS itu overwhelm capacity temporarily.

504s adalah sering intermittent dan muat-dependent

ini adalah apa membuat them nasty. Unlike sebuah hard outage, sebuah 504 frequently muncul hanya di bawah muat — yang berarti sebuah uptime monitor pinging selama sebuah tenang window dapat tampilkan 100% green sementara Googlebot, crawling di lebih berat bursts, adalah diam-diam collecting timeouts. di Google Search Console’s pemeriksaan URL Anda dapat see ini surface sebagai sebuah “Hostload exceeded” condition alih-alih sebuah bersih, constant error. jika Anda monitoring says semuanya’s fine tetapi Statistik Crawling disagrees, muat-dependent 504s adalah sebuah prime suspect.

Bagaimana Googlebot (dan Bingbot) tangani timeouts

Google tidak memperlakukan 504 sebagai penilaian kualitas konten; ini adalah sinyal ketersediaan, dan responsnya berupa throttling otomatis. Dokumentasi crawling-nya jelas: “Googlebot will scale back its crawling if it detects that your servers are having trouble responding to crawl requests.” (terjemahan) “Googlebot akan mengurangi crawling jika mendeteksi bahwa server Anda kesulitan merespons permintaan crawling.” Panduan anggaran crawling untuk situs besar menyampaikan hal serupa: “If the site slows down or responds with server errors, the limit goes down and Google crawls less.” (terjemahan) “Jika situs melambat atau merespons dengan kesalahan server, batasnya turun dan Google melakukan lebih sedikit crawling.” Evidence for this claim Google reduces crawling when server errors or slow responses indicate a site is having trouble responding. Scope: Google's documentation supports automatic crawl throttling for server trouble; it does not attribute a specific 504 to any particular bottleneck. Confidence: high · Verified: Google: Troubleshoot crawling errors

Penjelasan paling baru yang mengaitkan hal ini dengan respons lambat atau timeout muncul dalam Inside Googlebot dari Maret 2026. Gary Illyes dikutip mengatakan: “If your server is struggling to serve bytes, our crawlers will automatically back off to avoid overloading your infrastructure, which will drop your crawl frequency.” (terjemahan) “Jika server Anda kesulitan mengirim byte, crawler kami akan otomatis mengurangi aktivitas agar infrastruktur Anda tidak kelebihan beban; akibatnya, frekuensi crawling Anda turun.” Kutipan ini dilaporkan oleh liputan Search Engine Land; konfirmasikan rekaman atau transkrip asli sebelum mengutipnya di tempat lain. 504 membuat masalah itu terlihat.

Satu nuance worth understanding: Google tidak selalu see sebuah literal “504” cara Anda browser melakukan. jika timeout happens sebelum Googlebot mendapatkan apa pun status line di semua, ini adalah logged sebagai sebuah timeout/network error di Statistik Crawling alih-alih sebuah bersih 5XX. tetapi ketika sebuah intermediary proxy atau CDN times out dan generates -nya own 504 respons, Googlebot menerima sebuah standard 5XX server error. Either cara effect adalah identical: throttled laju crawling, dan, jika sustained, removal dari indeks.

Bing documents timeouts sebagai mereka own crawl-error category, terpisah dari kesalahan server — Bingbot berhenti trying untuk access halaman ketika respons adalah too slow — dan -nya standing recommendation adalah untuk periksa server respons time, pertahankan server software diperbarui, mengoptimalkan slow resources, dan baca server logs untuk systemic patterns alih-alih satu kali blips. Bing hasn’t published yang sama tingkat dari throttle-dan-recover detail Google memiliki, so treat dua sebagai broadly comparable di intent alih-alih confirmed untuk behave identically.

throttle-lalu-recover feedback loop

reassuring bagian: ini loop adalah automatic dan self-correcting. Google throttles down ketika ini sees errors dan timeouts, lalu ramps crawling back up secara bertahap setelah respons adalah healthy again. ada Tidak manual “unthrottle” button Anda perlu press setelah underlying issue adalah fixed — sebagai John Mueller noted, “Setelah hal settle down pada itu server, itu laju crawling akan return untuk wajar secara otomatis.” He juga flagged asymmetry: throttling down happens fast untuk resolve sebuah immediate masalah; ramping back up adalah selesai cautiously.

Duration adalah apa converts sebuah blip ke sebuah pengindeksan masalah

pendek, occasional 504s — sebuah sedikit selama sebuah spike, resolved quickly — mendapatkan retried dan adalah largely tolerated. Apa risks deindexing adalah sebuah sustained pattern dari timeouts di atas sebuah extended window. Google’s terdokumentasi “coba lagi nanti” mechanics — di mana Anda intentionally kembalikan 503 atau 429 selama overload — deskripsikan roughly sebuah dua-day horizon sebelum URLs mulai dropping, tetapi itu spesifik angka adalah terdokumentasi untuk 503/429 oleh name, tidak untuk 504. Google’s lebih luas 5xx guidance says laju crawling drops proportionally untuk bagaimana banyak URLs adalah erroring dan recovers secara bertahap setelah respons adalah healthy, tanpa naming sebuah fixed horizon untuk 504 secara khusus. Extending dua-day figure untuk 504 adalah sebuah reasonable inference, tidak sebuah terdokumentasi fact — treat ini sebagai: brief 504s adalah survivable, dan sebuah sustained pattern di atas days adalah range di mana Anda harus worry, tidak sebuah guaranteed trigger date.

Mengapa ini penting lebih pada besar dan ecommerce situs

jika Anda memiliki sebuah kecil situs milik siapa halaman mendapatkan di-crawl yang sama day mereka publish, Anda’ll hampir tidak pernah notice ini. tetapi pada besar atau fast-mengubah situs — big ecommerce catalogs, news, marketplaces — anggaran crawling adalah sudah constraint, dan sebuah wave dari 504s selama peak muat dapat starve crawling dari halaman itu genuinely perlu untuk menjadi recrawled. Timeouts dan anggaran crawling adalah yang sama conversation di scale.

server respons time dan TTFB adalah sebuah strong preventive lever — untuk origin-side penyebab

Di sini’s sebuah poin sebagian besar 504 artikel miss: menunggu until errors muncul dan lalu log-grepping adalah reactive. Monitoring server respons time continuously, so Anda see drift sebelum ini tips ke sebuah timeout, adalah proactive. sebuah server itu’s slow tetapi belum timing out hari ini becomes sebuah 504-generating server besok di bawah slightly lebih muat atau sebuah slightly lebih lambat dependency. Watching TTFB (Time untuk pertama Byte) sebagai sebuah ongoing early-warning sinyal — tidak hanya sebuah post-mortem metric — adalah bagaimana Anda catch itu drift.

caveat: TTFB monitoring addresses origin-side slowness. ini tidak akan catch sebuah CDN timing out pada sebuah healthy origin, sebuah muat balancer misconfigured untuk memberikan up too early, atau sebuah network path masalah antara hops — itu perlu emitting hop identified pertama ( “Di mana a 504 originates” bagian di atas, atau decision tree di bawah). TTFB adalah sebuah nyata, durable perbaiki untuk umum case dari sebuah genuinely upstream yang lambat; ini adalah tidak sebuah universal satu. setelah Anda’ve confirmed origin adalah bottleneck, mengoptimalkan dengan caching (halaman, object, dan CDN), lebih cepat database kueri dan proper pengindeksan, autoscaling untuk muat, dan sensible CDN upstream tuning.

Mengapa “sekadar raise itu timeout” adalah wrong instinct

Bumping proxy_read_timeout atau CDN’s upstream timeout dapat berhenti 504 dari menunjukkan — tetapi ini tidak membuat upstream respons apa pun lebih cepat. Worse, sebuah lebih lama jendela batas waktu di bawah muat berarti permintaan pile up dan tie up worker memproses dan connections untuk lebih lama, yang dapat membuat sebuah overload spiral worse, tidak better. Raising timeout adalah occasionally right panggil (untuk sebuah genuinely panjang-berjalan, well-dipahami operation), tetapi sebagai sebuah reflex ini masks nyata masalah.

Ketika downtime adalah planned atau Anda’re dengan sengaja shedding muat, right alat tidak letting halaman 504 — ini adalah returning sebuah 503 (dengan sebuah Retry-After header) so Anda kirim mesin pencari sebuah bersih, intentional “coba lagi nanti” alih-alih sebuah messy timeout.

Diagnosing sebuah 504 dalam praktik

Identify emitting hop sebelum Anda guess di sebuah penyebab — itu’s perbedaan antara memperbaiki sebenarnya masalah dan memperbaiki sebuah symptom:

  • Reproduce ini dan identify yang hop answered. muat ini di sebuah browser; hit ini dengan curl dan watch time_starttransfer untuk TTFB; jalankan ini melalui sebuah crawler like Ahrefs situs Audit atau Screaming Frog untuk see apakah ini adalah situs-wide atau isolated. jika Anda dapat, test direct-untuk-origin (bypassing CDN/proxy) untuk see apakah origin itself menyelesaikan.
  • Baca logs. server dan proxy logs tell Anda yang layer timed out dan, ideally, pada apa — slow kueri, stuck upstream, exhausted worker pool. Correlate oleh timestamp dan permintaan ID di seluruh layers alih-alih assuming.
  • periksa Search Console. Statistik Crawling surfaces respons-code spikes dan average respons time; halaman pengindeksan report dan pemeriksaan URL tampilkan apakah Google adalah hitting timeouts (including “Hostload exceeded”).

Reconciling alat penting: sebuah browser 504, sebuah Ahrefs situs Audit 5xx, dan sebuah GSC timeout dapat semua deskripsikan sama underlying origin yang lambat seen dari berbeda vantage poin. jangan assume three alat berarti three masalah.

sebuah 504 lives di sebuah kecil family. sebuah 500 adalah sebuah generic server error dengan Tidak lebih spesifik code; sebuah 502 adalah sebuah buruk/garbled upstream respons; sebuah 503 adalah sebuah jelas, sering intentional “tidak tersedia.” Knowing yang satu Anda’re sebenarnya returning — dan returning right satu pada purpose selama planned downtime — adalah half battle.

Try it live

This is a real endpoint on this site — not a simulation. Hit it from the button, open it in a new tab, or curl -i it from your terminal, and the server answers with the actual status code this article is about.

Open in new tab ↗

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.