DNS RobotDNS Propagation Checker
ホームDNS検索WHOISIP検索SSL
DNS RobotDNS Propagation Checker

次世代DNS伝播チェックツール

プライバシーポリシー利用規約私たちについてブログお問い合わせ

DNSツール

DNS検索DNS速度テストドメインからIP変換NS検索MX検索すべて表示

メールツール

SPFレコードチェッカーDMARCチェッカーDKIMチェッカーSMTPテストツールメールヘッダー解析すべて表示

ウェブサイトツール

WHOIS検索ホスティングチェッカードメイン空き状況確認サブドメイン検索CMS検出ツールすべて表示

ネットワークツール

PingツールトレースルートポートチェッカーHTTPヘッダーチェックSSL証明書チェックすべて表示

IPツール

IP検索自分のIPアドレス確認IPブラックリストチェックIPからホスト名変換ASN検索すべて表示

ユーティリティツール

QRコードスキャナーQRコード生成UPI QR Code GeneratorWiFi QR Code Generatorモールス信号変換すべて表示
© 2026 DNS Robot. 開発: ❤ Shaik Brothers
全システム正常稼働中
Made with
ホーム/ブログ/ERR_EMPTY_RESPONSE とは?原因と解決方法

ERR_EMPTY_RESPONSE とは?原因と解決方法

Shaik Vahid2026年9月30日9 分で読める
Chrome の「このページは動作していません」ERR_EMPTY_RESPONSE エラー画面と、試すべき解決策の図
Chrome の「このページは動作していません」ERR_EMPTY_RESPONSE エラー画面と、試すべき解決策の図

ポイント

ERR_EMPTY_RESPONSE(Chromium のエラー -324)は、ブラウザがサーバーに接続してリクエストを送ったのに、サーバーが1バイトも返さずに接続を閉じたことを意味します。Chrome には「このページは動作していません。example.com からデータが送信されませんでした。」と表示されます。訪問者の場合は、再読み込みし、シークレットモードを試し、VPN、プロキシ、ウイルス対策ソフトの HTTPS スキャンをオフにしてください。localhost や Docker で開発している場合は、たいていアプリが想定どおりの場所で待ち受けていない(コンテナでは 0.0.0.0 にバインドする)か、HTTPS 専用のポートに http:// でアクセスしています。サイト管理者は、クラッシュ、タイムアウト、そして nginx の return 444 のような接続を切断するルールを探しましょう。

Advertisement

ERR_EMPTY_RESPONSE とは?

ERR_EMPTY_RESPONSE は、「このページは動作していません。example.com からデータが送信されませんでした。」 と表示される Chrome と Edge のエラーページです。Chromium 内部ではネットエラー -324 にあたり、「サーバーがデータを何も送信せずに接続を閉じた」と定義されています。

ブラウザは、ほとんどの接続エラーよりも先の段階まで進んでいます。アドレスの名前解決ができ、接続が開かれ、ブラウザはリクエストを送信しました。その後、サーバー、またはその手前にある何かが 空の応答のまま接続を閉じた のです。ステータスコードもヘッダーもページもありません。Chromium のコードがこのエラーを使うのは、新しい接続が0バイトのまま閉じられた場合だけです。再利用していた古い接続が閉じられた場合、Chrome は何も表示せずに再試行します。

リクエストは実際に届いているため、ERR_EMPTY_RESPONSE はたいてい サーバー側 の問題を示しています。リクエストの処理中にクラッシュしたアプリ、意図的に接続を切断するルール、接続を受け付けたものの背後に何もないサービスなどです。ただし、あなた自身のコンピューター上の原因でも発生することがあります。

メモ

コマンドラインツールは、同じ失敗を別の言葉で報告します。curl は Empty reply from server(curl エラー 52)と表示し、他の HTTP ライブラリは「socket hang up」や「connection closed without response」と表示することがあります。テスト中にこれらのいずれかが表示されたら、同じ問題を見ていることになります。

ERR_EMPTY_RESPONSE の原因

原因発生場所手がかり
リクエストの処理中にアプリがクラッシュした、または強制終了されたサーバー全員に対して失敗し、特定の重いページで起こることが多い
接続を切断するルール(nginx の return 444、WAF、ボット対策)サーバー一部の訪問者、IP、ユーザーエージェントだけで失敗する
背後で何も待ち受けていないポート転送(Docker、ロードバランサー)サーバー / 開発者ポートは開いているが、すべてのリクエストが空で返る
HTTPS しか話さないポートに http:// で送った開発者https:// では動作し、http:// では失敗する
VPN、プロキシ、ウイルス対策ソフトの HTTPS スキャンあなたのデバイスあなたのデバイスやネットワークでだけ失敗する
リクエストやヘッダーがサーバーにとって大きすぎるサーバーログイン後や Cookie が多いときに失敗する

Advertisement

解決策1:再読み込みしてシークレットモードを試す

サーバーが悪いタイミングで再起動しただけなら、数秒後に再読み込みすれば十分です。エラーが繰り返す場合は、シークレット ウィンドウでページを開いてください(Ctrl + Shift + N、Mac は Cmd + Shift + N)。シークレットモードは Cookie も拡張機能もない状態で始まるため、ブラウザに保存されている何かが関係しているかどうかをすぐに判断できます。

次に、サイトが全員に対してダウンしているかどうかを確認します。DNS Robot の HTTP ヘッダーチェック ツールは、当社のサーバーからページをリクエストします。こちらで正常な応答が返るなら、問題はあなたとサイトの間にあります。こちらでも何も返ってこなければ、サイト自体に障害が起きています。

解決策2:VPN、プロキシ、HTTPS スキャンをオフにする

接続の中間に位置するものはすべて、リクエストを受け付けた後、応答を渡さずに接続を閉じてしまう可能性があります。

  • VPN: 完全に切断して再読み込みします。

  • プロキシ: Windows 11 では、設定 → ネットワークとインターネット → プロキシ → プロキシ サーバーを使う をオフにします。Mac では、システム設定 → ネットワーク → 使用中の接続 → 詳細… → プロキシ。

  • ウイルス対策ソフトの HTTPS スキャン: Web 保護や HTTPS スキャンの機能だけをオフにして(HTTPS スキャン、Web シールド、SSL/TLS プロトコルフィルタリング などの名前が一般的です)、再読み込みします。これで直るなら、そのサイトを除外リストに追加し、スキャンをオンに戻してください。

注意

テストが終わったら、セキュリティソフトを元に戻してください。HTTPS スキャンが原因だった場合は、保護をオフにしたままにせず、そのサイトだけを除外するか、製品を更新しましょう。

Advertisement

解決策3:サイトのデータを削除し、拡張機能を無効にする

非常に大きい、または破損した Cookie があると、サーバーが応答せずにリクエストを切断することがあり、ログインした後にだけエラーが出るという形で現れることがよくあります。そのサイトの Cookie を削除しましょう。アドレスバーの左端のアイコンをクリック → Cookie とサイトデータ(または サイトの設定)→ データを削除して、もう一度ログインします。

次に、chrome://extensions ですべての拡張機能を無効にして再読み込みします。1つずつ有効に戻して、干渉しているものを見つけてください。広告ブロッカー、プライバシーツール、リクエストを編集するものが原因であることが多いです。

ヒント

ログインした後にだけエラーが出る場合は、Cookie が最も疑わしい原因です。サイトのデータを削除するとログアウトされるので、先にパスワードやパスワードマネージャーを用意しておいてください。

解決策4:DNS をフラッシュしてネットワークスタックをリセットする

1台のコンピューターでどのサイトも空の応答になる場合は、そのネットワーク設定をリセットします。Windows では管理者権限のコマンド プロンプトで以下のコマンドを実行し、再起動してください。Mac では DNS キャッシュをフラッシュ し、Wi-Fi ネットワークを削除してから追加し直します。

powershell
ipconfig /flushdns
netsh winsock reset
netsh int ip reset
ipconfig /release
ipconfig /renew

スマートフォンのモバイルデータ通信など、別のネットワークも試してください。そこでサイトが表示されるなら、普段使っているネットワーク(学校、職場、ISP)のフィルタリングが接続を切断している可能性があります。

Advertisement

localhost と Docker での ERR_EMPTY_RESPONSE

開発者がこのエラーを最もよく目にするのは、自分のマシン上です。よくある原因は次のとおりです。

  • Docker コンテナ内のアプリが 127.0.0.1 で待ち受けている。 コンテナ内では 127.0.0.1 は「このコンテナだけ」を意味するため、Docker のポート転送の接続先がなく、ブラウザには空の応答が返ります(構成によっては接続リセットになります)。コンテナ内のアプリが 0.0.0.0 で待ち受けるようにしてください。たとえば next dev -H 0.0.0.0、vite --host 0.0.0.0、flask run --host=0.0.0.0、uvicorn main:app --host 0.0.0.0 です。

  • コンテナのポートマッピングが一致していない。 -p 8080:3000 は、ホストのポート 8080 をコンテナ 内部の 3000 に転送します。アプリが実際には 5000 で待ち受けていると、すべてのリクエストが空で返ってきます。

  • HTTPS 専用のポートに http:// でアクセスしている。 ポートで TLS を想定しているサーバーの中には、平文の HTTP が届くとそのまま接続を切るものがあります。http:// ではなく https://localhost:8443 を試してください。

  • リクエストの処理中に開発サーバーがクラッシュした。 開発サーバーを実行しているターミナルを確認してください。その時点で例外やメモリ不足のエラーが出ていれば、それが答えです。

bash
# ブラウザを使わずに再現する
curl -v http://localhost:8080/
# "Empty reply from server" = 接続は受け付けられたが、何も返されなかった

# コンテナはどのポートを公開し、内部では何が待ち受けているか?
docker ps --format "table {{.Names}}\t{{.Ports}}"
docker exec -it <container> sh -c "netstat -tlnp 2>/dev/null || ss -tlnp"

ヒント

コンテナ内で 127.0.0.1:3000 で待ち受けていると空の応答になります。Docker のポート転送に必要なのは 0.0.0.0:3000(または :::3000)です。

サイト管理者向け:サーバーが空の応答を返す理由

  • クラッシュとメモリ不足による強制終了。 リクエストを処理しているプロセスが停止すると、何も送られないまま接続が閉じられます。特に重いページやアップロードについて、アプリのログを確認し、dmesg -T | grep -i "killed process" で Linux の OOM キラー(メモリ不足時の強制終了)が動いていないか調べてください。

  • 意図的な切断。 nginx の特殊な return 444; は、応答を一切返さずに接続を閉じます。悪質なボットや不明なホスト名をブロックするためによく使われます。このようなルールが実際の訪問者にも一致してしまうと(範囲が広すぎるユーザーエージェントや GeoIP のルールなど)、訪問者には ERR_EMPTY_RESPONSE が表示されます。HTTP/2 接続では nginx が代わりにストリームをリセットするため、ERR_HTTP2_PROTOCOL_ERROR になります。WAF、レート制限、ボット対策サービスも同じことをする場合があります。

  • バックエンドのないポート転送やロードバランサー。 接続を受け付けても、背後に正常なサーバーがないリスナーは、空のまま接続を閉じることがあります。ターゲットのヘルスチェックと、バックエンドのポートが一致しているかを確認してください。

  • 応答せずに接続を閉じるタイムアウト。 時間のかかるリクエストでは、ソケットを黙って閉じるのではなく、適切なエラー(504 など)を返すようにしましょう。そうすれば、訪問者も監視ツールも何が起きたのかを把握できます。

  • 大きすぎるリクエスト。 非常に大きなヘッダーや Cookie があると、サーバーによってはリクエストを切断します。Cookie は小さく保ちましょう。

bash
# 接続を切断するルールはないか?
sudo grep -rn "return 444" /etc/nginx/

# 訪問者と同じように外部からテストする
curl -sv https://yourdomain.com/ -o /dev/null

メモ

nginx や CDN の背後では、上流のアプリがクラッシュしても、プロキシ自体は応答を返すため、通常は空の応答ではなく 502 Bad Gateway になります。ERR_EMPTY_RESPONSE は、ブラウザが接続したサーバーがまったく何も送らなかったことを意味するので、まず一番外側の層から調べてください。

Advertisement

ERR_EMPTY_RESPONSE と似たエラーの違い

エラーコード何が起きたか
ERR_EMPTY_RESPONSE-324リクエストは送信されたが、0バイトのまま接続が閉じられた
ERR_CONNECTION_CLOSED-100リクエストを送る前に閉じられた(通常は HTTPS のハンドシェイク中)
ERR_CONNECTION_RESET-101TCP リセットで接続が突然切断された
502 Bad GatewayHTTPプロキシは応答したが、その上流のアプリが失敗した

関連ガイド:ERR_CONNECTION_CLOSED、ERR_CONNECTION_RESET、502 Bad Gateway、500 Internal Server Error。サーバーのポートが外部からの接続を受け付けるかどうかを確認するには、ポートチェッカー を使ってください。

サーバーはネットワークの外から応答する?

DNS Robot の無料ポートチェッカーは、ドメインのポート 443 または 80 が当社のサーバーからの接続を受け付けるかどうかをテストします。HTTP ヘッダーチェックと組み合わせれば、サーバーが実際に応答を返しているかどうかも確認できます。

試す ポートチェッカー

Advertisement

よくある質問

ブラウザがサーバーに接続してリクエストを送ったのに、サーバーがステータスコードもヘッダーもページも返さず、データを何も送らないまま接続を閉じたという意味です。Chromium ではネットエラー -324 にあたり、「このページは動作していません。example.com からデータが送信されませんでした。」と表示されます。

関連ツール

Port CheckerHTTP Headers CheckPing Tool

関連記事

ERR_CONNECTION_RESET とは?原因と解決方法ERR_CONNECTION_CLOSED とは?原因と解決方法HTTPエラー500 Internal Server Errorの原因と解決方法

目次

  • ERR_EMPTY_RESPONSE とは?
  • ERR_EMPTY_RESPONSE の原因
  • 解決策1:再読み込みしてシークレットモードを試す
  • 解決策2:VPN、プロキシ、HTTPS スキャンをオフにする
  • 解決策3:サイトのデータを削除し、拡張機能を無効にする
  • 解決策4:DNS をフラッシュしてネットワークスタックをリセットする
  • localhost と Docker での ERR_EMPTY_RESPONSE
  • サイト管理者向け:サーバーが空の応答を返す理由
  • ERR_EMPTY_RESPONSE と似たエラーの違い
  • よくある質問