EasyBot

EASYBOT GUIDE

502 Bad Gatewayとは?原因と直し方を分かりやすく解説

502 Bad Gatewayエラーが発生する仕組み、利用者側とサーバー管理者側で確認する項目、Cloudflareやリバースプロキシ利用時の対処法を解説します。

502 Bad Gatewayは、入口となるサーバーが奥にあるサーバーから正常な応答を受け取れなかった時に表示されるHTTPエラーです。 ブラウザ自体の故障とは限らず、Webサーバー、アプリ、ネットワークのどこかで通信が途切れています。

502エラーが起きる仕組み

Cloudflare、Caddy、Nginxなどのリバースプロキシは、ブラウザからの要求を受けてアプリサーバーへ転送します。転送先が停止中、応答が遅い、接続先ポートが違う場合、プロキシは502を返します。

サイト利用者ができる対処

  • 数分待ってからページを再読み込みする
  • 別の回線やブラウザでも同じか確認する
  • サイトのステータスページや公式のお知らせを確認する

サーバー管理者が確認する順番

  1. アプリやDockerコンテナが稼働しているか確認する
  2. リバースプロキシの接続先ホスト名とポートを確認する
  3. アプリのログでクラッシュ、メモリ不足、タイムアウトを探す
  4. ファイアウォールとDockerネットワークを確認する
  5. Cloudflare利用時はオリジンサーバーへ直接接続できるか確認する
docker ps
docker logs --tail 100 your-container
curl -I http://127.0.0.1:3000/health

再発を防ぐ方法

ヘルスチェック、コンテナの自動再起動、メモリ上限、タイムアウト監視を設定します。 起動直後だけ502になる場合は、アプリの準備完了を確認してから通信を流す構成が有効です。