502

Bad Gateway

공식 하위 상태 코드
다운스트림 서버가 오류 메시지를 반환했습니다.

HTTP 상태 코드 502의 사양

502 Bad Gateway 상태 코드는 서버가 게이트웨이 또는 프록시 역할을 하는 동안 요청을 처리하려고 시도하는 동안 액세스한 인바운드 서버로부터 잘못된 응답을 받았음을 나타냅니다.

출처 / 인용 출처: 502 Bad Gateway HTTP 상태 코드는 RFC7231 섹션 RFC7231에 명시되어 있습니다.

PHP로 502 상태 코드를 던지는 방법은 무엇인가요?

웹 페이지에 HTTP 상태 코드 502를 던지려면 PHP 함수 http_response_code를 사용할 수 있습니다. 구문은 다음과 같습니다: http_response_code(502) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

502 HTTP 상태 코드 테스트

클라이언트 측에서 HTTP 상태 코드(이 경우 502 Bad Gateway) 및 기타 정보를 표시하려면 F12를 사용하여 개발 콘솔을 열어야 합니다. 그런 다음 "네트워크" 탭으로 이동합니다. 이제 페이지를 열면 네트워크 탭에 웹사이트(예: index.php)가 표시됩니다. 이를 선택한 다음 허더 섹션을 선택해야 합니다. 그러면 사용자에게 다음과 같은 결과가 표시됩니다:

상태 코드 502 Bad Gateway
개요
URL: https://http-statuscode.com/errorCodeExample.php?code=502
상태: 502 Bad Gateway
그: Network
IP 주소: XX.XX.XX.XX
상태 코드 502 Bad Gateway

502 상태 코드 문제를 해결하려면 어떻게 해야 하나요?

일반적으로 클라이언트(예: 웹 브라우저)와 클라이언트가 통신하고자 하는 서버 사이의 중개자 역할을 하는 프록시 서버에서 HTTP 상태 코드 502 Bad Gateway를 반환합니다. 이 오류는 프록시 서버가 업스트림 서버로부터 유효하지 않은 응답을 수신할 때 발생합니다. 이 오류의 원인은 몇 가지가 있으며, 아래에서 가장 가능성이 높은 몇 가지 문제와 해결 방법에 대해 설명하겠습니다.

  • 과부하가 걸리거나 연결할 수 없는 업스트림 서버: HTTP 상태 코드 502 Bad Gateway가 발생하는 일반적인 이유는 프록시 서버가 연결하는 업스트림 서버에 과부하가 걸렸거나 연결할 수 없기 때문입니다. 이 경우 업스트림 서버가 제대로 작동하고 있는지, 요청을 처리할 수 있는 충분한 리소스가 있는지 확인해야 합니다. 서버 로그와 네트워크 연결을 확인하여 문제가 있는지 확인하세요. 업스트림 서버에 과부하가 걸리면 여러 서버에 부하를 분산하거나 리소스를 추가하여 문제를 해결할 수 있습니다.
  • 네트워크 문제: 또 다른 가능한 문제는 프록시 서버와 업스트림 서버 간의 네트워크 문제입니다. 불안정한 연결, DNS 문제 또는 통신을 방해하는 방화벽 설정이 원인일 수 있습니다. 네트워크 설정을 확인하여 필요한 모든 포트가 열려 있고 연결이 안정적인지 확인하세요. 또한 DNS 확인을 테스트하여 업스트림 서버가 제대로 확인되었는지 확인하세요. 경우에 따라 프록시 서버를 다시 시작하여 네트워크 문제를 해결하는 것도 도움이 될 수 있습니다.
  • 잘못 구성된 프록시 서버: 프록시 서버를 잘못 구성하면 HTTP 상태 코드 502 Bad Gateway가 발생할 수도 있습니다. 프록시 설정이 올바른지, 프록시 서버가 요청을 업스트림 서버에 올바르게 전달하는지 확인하세요. 프록시 구성 파일과 설정이 올바른지 확인하세요. 경우에 따라 프록시 서버를 업데이트하거나 다른 버전으로 전환하여 알려진 문제를 해결하는 것이 도움이 될 수도 있습니다.
  • 업스트림 서버에 잘못된 애플리케이션이 있습니다: 업스트림 서버에 애플리케이션 또는 구성에 결함이 있어 HTTP 상태 코드 502 Bad Gateway가 발생할 수도 있습니다. 애플리케이션 및 서버 로그를 확인하여 가능한 오류나 예외를 찾아보세요. 애플리케이션을 업데이트하거나 복구하여 알려진 문제를 해결합니다. 개발자 또는 시스템 관리자와 협력하여 문제를 분석하고 해결하는 것도 도움이 될 수 있습니다.
  • 프록시 서버 자체에 문제가 있는 경우: 마지막으로, HTTP 상태 코드 502 Bad Gateway는 프록시 서버 자체의 문제로 인해 발생할 수도 있습니다. 소프트웨어 오류, 업데이트 누락 또는 하드웨어 문제가 원인일 수 있습니다. 프록시 서버 로그에서 오류 메시지나 경고를 확인하세요. 프록시 서버를 최신 버전으로 업데이트하고 알려진 문제가 있는지 확인하세요. 경우에 따라 문제를 해결하기 위해 프록시 서버를 다시 설치하거나 다른 소프트웨어 솔루션으로 전환해야 할 수도 있습니다.
    • HTTP 상태 코드 502 Bad Gateway의 해결 방법은 특정 환경과 구성에 따라 크게 달라질 수 있다는 점에 유의해야 합니다. 숙련된 개발자 또는 시스템 관리자와 협력하여 문제를 진단하고 해결하는 것이 도움이 될 수 있습니다.

      .

상태 코드 502에 대한 오류 페이지를 직접 만드는 방법

자체 502 Bad Gateway 오류 페이지를 만드는 것은 "Apache" 및 "NGINX" 웹 서버 모두에서 비교적 쉽습니다.

Apache Webserver

웹 서버 "아파치"는 인터넷에서 가장 일반적인 웹 서버 중 하나입니다. "Apache"에서 502 Bad Gateway 오류 페이지를 직접 생성하려면 다음 파일에서 다음과 같이 변경해야 합니다.

File: .htaccess
ErrorDocument 502 /errors/502.html

NGINX Webserver

웹 서버 "Apache"와 마찬가지로 "NGINX"도 인터넷에서 널리 사용됩니다. "NGINX"에서 502 Bad Gateway 오류 페이지를 직접 생성하려면 다음 파일에서 다음과 같이 변경해야 합니다.

File: sites-enabled/default
error_page 502 /502.html;
location = /502.html {
    root /usr/share/nginx/html;
    internal;
}

502 상태 코드의 브라우저 호환성

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

프로그래밍 언어의 상수

HttpStatusCode.BadGateway
http.StatusBadGateway
Response::HTTP_BAD_GATEWAY
httplib.BAD_GATEWAY
http.client.BAD_GATEWAY
http.HTTPStatus.BAD_GATEWAY
:bad_gateway

502 상태 코드의 하위 상태 코드

하위 상태 코드는 순전히 기술적인 것이므로 사용자에게 전송되어서는 안 됩니다. 예를 들어 상태 코드 502.1이 발생하면 기록될 수 있지만 상태 코드 502는 사용자에게 전송됩니다.:
502.1 CGI application timeout
HTTP IIS, 비공식
502.2 Bad gateway: Premature Exit
HTTP IIS, 비공식
502.3 Bad Gateway: Forwarder Connection Error (ARR)
HTP IIS, 비공식
502.4 Bad Gateway: No Server (ARR)
HTP IIS, 비공식
502.5 WebSocket failure (ARR)
HTTP IIS, 비공식
502.6 Forwarded request failure (ARR)
HTTP IIS, 비공식
502.7 Execute request failure (ARR)
HTTP IIS, 비공식

HTTP 상태 코드 502에 대한 재미있는 밈

작성자: Tony Brüser
작성자: Tony Brüser

토니 브루서는 HTTP 상태 코드에 관심이 많은 열정적인 웹 개발자입니다.

LinkedInGitHub