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 분 소요
'이 페이지는 작동하지 않습니다' ERR_EMPTY_RESPONSE Chrome 오류 화면과 해결 방법
'이 페이지는 작동하지 않습니다' ERR_EMPTY_RESPONSE Chrome 오류 화면과 해결 방법

핵심 요약

ERR_EMPTY_RESPONSE(Chromium 오류 -324)는 브라우저가 서버에 연결해 요청을 보냈는데, 서버가 단 한 바이트도 돌려보내지 않고 연결을 닫았다는 뜻입니다. 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에서 전송한 데이터가 없습니다.'(영문: "This page isn't working. example.com didn't send any data.")라고 표시되는 Chrome·Edge 오류 페이지입니다. Chromium 내부에서는 네트워크 오류 -324이며, "The server closed the connection without sending any data", 즉 서버가 아무 데이터도 보내지 않고 연결을 닫았다고 정의되어 있습니다.

브라우저는 대부분의 연결 오류보다 더 멀리 진행했습니다. 주소가 확인되었고, 연결이 열렸고, 브라우저가 요청을 보냈습니다. 그런데 서버, 또는 서버 앞단의 무언가가 빈 응답으로 연결을 닫은 것입니다. 상태 코드도, 헤더도, 페이지도 없습니다. 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, User-Agent에서만 실패
뒤에서 수신 대기하는 것이 없는 포트 포워딩(Docker, 로드 밸런서)서버 / 개발자포트는 열려 있지만 모든 요청이 빈 응답을 반환
HTTPS만 사용하는 포트로 http:// 요청개발자https://로는 되고 http://로는 실패
VPN, 프록시, 백신 HTTPS 검사내 기기내 기기나 내 네트워크에서만 실패
서버가 처리하기에 너무 큰 요청이나 헤더서버로그인 후 또는 쿠키가 많을 때 실패

Advertisement

해결 방법 1: 새로고침 후 시크릿 창에서 열기

서버가 하필 그 순간에 재시작되었다면 몇 초 뒤 새로고침하는 것만으로 충분합니다. 오류가 반복된다면 시크릿 창(Ctrl + Shift + N, Mac Cmd + Shift + N)에서 페이지를 열어 보세요. 시크릿 창은 쿠키와 확장 프로그램 없이 시작되므로, 브라우저에 저장된 무언가가 관련되어 있는지 빠르게 알 수 있습니다.

그다음 사이트가 모두에게 다운되었는지 확인하세요. DNS Robot의 HTTP 헤더 확인 도구는 저희 서버에서 페이지를 요청합니다. 저희 쪽에서 정상 응답을 받는다면 문제는 나와 사이트 사이에 있습니다. 저희 쪽에서도 아무것도 받지 못한다면 사이트 자체가 실패하고 있는 것입니다.

해결 방법 2: VPN, 프록시, HTTPS 검사 끄기

연결의 중간에 자리 잡은 것은 무엇이든 요청을 받은 뒤 응답을 전달하지 않고 연결을 닫을 수 있습니다:

  • VPN: 연결을 완전히 끊고 새로고침하세요.

  • 프록시: Windows 11에서는 설정 → 네트워크 및 인터넷 → 프록시 → 프록시 서버 사용을 끄세요. Mac에서는 시스템 설정 → 네트워크 → 사용 중인 연결 → 세부사항… → 프록시로 이동하세요.

  • 백신 HTTPS 검사: 웹 또는 HTTPS 검사 기능(HTTPS 검사, 웹 실드(Web Shield), SSL/TLS 프로토콜 필터링 등으로 불림)만 끄고 새로고침하세요. 그것으로 해결된다면 해당 사이트를 예외로 추가하고 검사를 다시 켜세요.

경고

테스트가 끝나면 보안 소프트웨어를 다시 켜세요. HTTPS 검사가 원인이었다면 보호 기능을 꺼 둔 채 두지 말고, 해당 사이트 하나만 예외로 추가하거나 제품을 업데이트하세요.

Advertisement

해결 방법 3: 사이트 데이터 삭제 및 확장 프로그램 끄기

아주 크거나 손상된 쿠키 때문에 서버가 응답하는 대신 요청을 끊을 수 있으며, 이 경우 로그인한 뒤에만 오류가 나타나는 경우가 많습니다. 해당 사이트의 쿠키를 지우세요: 주소창 왼쪽 아이콘 클릭 → 쿠키 및 사이트 데이터(또는 사이트 설정) → 데이터 삭제 후 다시 로그인.

다음으로 chrome://extensions에서 모든 확장 프로그램을 끄고 새로고침하세요. 하나씩 다시 켜 가며 방해하는 확장 프로그램을 찾으세요. 광고 차단기, 개인정보 보호 도구, 요청을 수정하는 확장 프로그램인 경우가 많습니다.

팁

로그인한 뒤에만 오류가 나타난다면 쿠키가 가장 유력한 용의자입니다. 사이트 데이터를 지우면 로그아웃되므로, 먼저 비밀번호나 비밀번호 관리자를 준비해 두세요.

해결 방법 4: DNS 플러시 및 네트워크 스택 초기화

한 컴퓨터에서 모든 사이트가 빈 응답을 준다면 그 컴퓨터의 네트워크 구성을 초기화하세요. 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)입니다.

웹사이트 운영자용: 서버가 빈 응답을 보내는 이유

  • 크래시와 메모리 부족 종료. 요청을 처리하던 프로세스가 죽으면 아무것도 보내지 못한 채 연결이 닫힙니다. 앱 로그를 확인하고, Linux OOM(메모리 부족) 킬러는 dmesg -T | grep -i "killed process"로 확인하세요. 특히 무거운 페이지와 업로드에서 자주 발생합니다.

  • 의도적인 연결 끊기. nginx의 특수 지시어 return 444;는 아무 응답 없이 연결을 닫으며, 악성 봇이나 알 수 없는 호스트 이름을 차단하는 데 자주 쓰입니다. 이런 규칙(너무 넓은 User-Agent 규칙이나 GeoIP 규칙)이 실제 방문자에게 적용되면, 방문자에게는 ERR_EMPTY_RESPONSE가 표시됩니다. HTTP/2 연결에서는 nginx가 대신 스트림을 리셋하므로 ERR_HTTP2_PROTOCOL_ERROR가 표시됩니다. WAF, 속도 제한기, 봇 차단 서비스도 같은 일을 할 수 있습니다.

  • 백엔드가 없는 포트 포워딩과 로드 밸런서. 연결은 받지만 뒤에 정상 서버가 없는 리스너는 빈 응답으로 연결을 닫을 수 있습니다. 대상 서버의 상태(health)와 백엔드 포트가 일치하는지 확인하세요.

  • 응답 대신 연결을 닫는 타임아웃. 오래 걸리는 요청이 소켓을 조용히 닫지 말고 504 같은 적절한 오류를 반환하도록 하세요. 그래야 방문자와 모니터링 도구가 무슨 일이 일어났는지 알 수 있습니다.

  • 너무 큰 요청. 아주 큰 헤더나 쿠키는 일부 서버가 요청을 끊게 만들 수 있습니다. 쿠키를 작게 유지하세요.

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와 비슷한 오류 비교
  • 자주 묻는 질문