504 Gateway Timeout は、ゲートウェイまたはプロキシとして動作するサーバーが、リクエストを完了するために必要な上流のサーバーから、時間内にレスポンスを受け取れなかったことを示します。プロキシは設定されたタイムアウトまで待ち、そこであきらめています。
502 とは異なり、上流は壊れたレスポンスを送ったのではなく、時間内に何も送らなかったということです。典型的な原因は、遅いデータベースクエリ、時間のかかるレポート処理、応答しない外部 API、過負荷のバックエンドです。各レイヤーにはそれぞれの上限があり、たとえば nginx の proxy_read_timeout(デフォルトは 60 秒)、ロードバランサーのアイドルタイムアウト、サーバーレス関数の実行時間の上限などがあります。
Cloudflare の背後では、接続は受け付けるものの応答が遅すぎるオリジンに対して、504 ではなく 524 A Timeout Occurred が返されます。
レスポンス例
HTTP
HTTP/1.1 504 Gateway Timeout
Date: Fri, 06 Nov 2026 10:15:32 GMT
Content-Type: text/html
Content-Length: 106
<html><body><h1>504 Gateway Timeout</h1>
<p>The upstream server did not respond in time.</p></body></html> SEO とリダイレクトチェック
504 はサーバーエラーとして扱われ、クロールを遅くし、続けばインデックスからの削除につながります。応答が遅いこと自体も、Google がクロールするページ数を減らします。リダイレクト速度チェッカーは各ホップにかかる時間を表示するので、遅いリダイレクトや遅い最終ページを、タイムアウトになる前に見つけるのに役立ちます。
よくある原因と主な用途
- 遅いデータベースクエリや時間のかかるリクエストが、プロキシのタイムアウトを超えている場合。
- アプリケーションが依存している外部 API が応答しない場合。
- 上流のサーバーが過負荷になっているか、両者の間の DNS やネットワークの問題によって、プロキシが上流に到達できない場合。
- レイヤー間でタイムアウトの設定がそろっておらず、アプリケーションの処理が終わる前にプロキシがあきらめてしまう場合。