HTTP 505 HTTP Version Not Supported: 의미와 해결 방법

직접 답변

HTTP 505는 서버가 요청에 사용된 주요 HTTP 프로토콜 버전을 지원하지 않는다는 의미입니다. HTTP 엔드포인트가 응답을 반환했으므로 DNS 또는 TLS 실패와는 다릅니다. 협상되었거나 요청된 HTTP 버전을 확인하고, 어떤 서버 또는 중간 계층이 응답을 생성했는지 식별한 다음 관련 호환성 또는 프로토콜 설정을 수정하세요.

핵심 요점

  • HTTP 505는 프로토콜 버전 호환성 오류이며, 웹사이트가 오프라인 상태라는 일반적인 의미가 아닙니다.
  • 응답은 origin server, reverse proxy, CDN, load balancer 또는 다른 HTTP intermediary가 생성했을 수 있습니다.
  • 설정을 변경하기 전에 정확한 요청, 협상된 프로토콜, 응답 헤더 및 관련 로그를 확인하세요.
  • 다른 요청은 계속 정상 작동하는 동안 특정 URL, 클라이언트, HTTP 메서드 또는 네트워크 경로 하나에만 문제가 발생할 수 있습니다.
  • 진단 결과 해당 계층이 관련된 것으로 확인되지 않았다면 TLS, DNS, 인증 또는 보안 설정을 변경하지 마세요.
검토일: 2026-09-25 HTTP 및 서버 오류
SA

Site Administrator

마지막 검토: September 25, 2026

이 오류의 의미와 확인 방법

  • 브라우저, API 클라이언트, 모니터링 시스템 또는 명령줄 도구가 505 HTTP Version Not Supported를 수신합니다.
  • 응답에 요청된 HTTP 버전이 지원되지 않는다는 메시지가 포함될 수 있습니다.
  • 클라이언트가 이후 HTTP 응답을 수신했으므로 DNS가 성공적으로 해석되고 TLS가 성공적으로 완료될 수 있습니다.
  • 특정 클라이언트, 프로토콜 협상 경로, URL, HTTP 메서드 또는 중간 계층에서만 오류가 발생할 수 있습니다.
  • 응답 헤더를 통해 응답이 proxy, CDN, load balancer 또는 origin server에서 왔는지 확인할 수 있으며, 캐싱 또는 연결 세부 정보가 표시될 수도 있습니다.

가능성이 높은 순서의 주요 원인

  1. 지원되지 않는 HTTP 프로토콜 버전: 엔드포인트가 요청에 사용된 주요 HTTP 버전을 지원하지 않습니다. 이것이 상태 코드 505의 정의상 원인입니다.
  2. 중간 계층과 upstream 간 프로토콜 불일치: reverse proxy, CDN, load balancer 또는 gateway가 다음 서버에서 허용하지 않는 프로토콜 버전을 사용하거나 자체적으로 505 응답을 반환할 수 있습니다.
  3. 잘못되었거나 불완전한 HTTP 프로토콜 설정: 최근 서버, proxy 또는 애플리케이션 변경으로 인해 전체 요청 경로에서 지원되지 않는 프로토콜 버전이 활성화되었거나 필수로 지정되었을 수 있습니다.
  4. 클라이언트별 협상 또는 요청 동작: 특정 클라이언트나 모니터링 도구가 브라우저 또는 다른 클라이언트와 다른 HTTP 프로토콜을 선택하여 호환성 문제를 드러낼 수 있습니다.
  5. origin이 아닌 계층에서 발생한 예상치 못한 응답: 상태 코드는 URL을 소유한 애플리케이션이 아니라 gateway 또는 보안 중간 계층에서 생성되었을 수 있습니다. 이를 origin server의 응답과 구분하려면 헤더와 로그를 확인해야 합니다.

인증, rate limit, DNS 및 TLS가 요청에 영향을 줄 수 있지만, 그 자체만으로는 HTTP 505 응답을 설명할 수 없습니다. 응답 헤더 또는 로그에서 프로토콜 버전 실패와의 연관성이 확인되지 않는 한 별도의 조사 경로로 다루세요.

해결 방법

1최종 응답이 실제로 505인가요? 아니라면실제 상태 코드 또는 연결 오류를 대신조사하세요.2특정 클라이언트, 메서드, 경로 또는네트워크 경로에서만 문제가 발생하나요?그렇다면 해당 사례의 프로토콜 협상 및요청 설정을 비교하세요.3어떤 HTTP 버전이 사용되었거나요청되었나요? 각 hop에서 지원하는 버전과비교하세요.4누가 응답을 생성했나요? 헤더, 요청 ID 및로그를 사용하여 중간 계층과 origin을구분하세요.5최근 프로토콜 또는 proxy 변경 이후 문제가발생했나요? 그렇다면 일반적인 승인절차를 거쳐 해당 변경만 검토하거나rollback하세요.6수정된 요청이 다른 경로에 영향을 주지않고 성공하나요? 아니라면 관련 없는 DNS,TLS 또는 접근 설정을 변경하는 대신 다음hop을 계속 추적하세요.
Diagnostic flow at a glance — full detail in the steps below.

방문자 및 API 사용자

  1. 정확한 URL을 한 번 다시 요청하고, 클라이언트가 최신 상태이며 일반적인 HTTP 요청을 보내도록 설정되어 있는지 확인하세요.
  2. API 클라이언트 또는 모니터링 도구에서 문제가 발생한다면, 지원되는 다른 클라이언트와 결과를 비교하세요. 실패가 특정 클라이언트에 한정되는지 기록하세요.
  3. URL, HTTP 메서드, 대략적인 시각, 응답 상태 및 응답 헤더를 기록하세요. 비밀번호, 쿠키, 인증 토큰 또는 기타 비밀 정보는 포함하지 마세요.
  4. 오류가 계속되면 정제한 해당 정보를 사이트 또는 API 운영자에게 보내세요. 방문자가 서버 측 프로토콜 호환성 문제를 직접 해결할 수 있는 경우는 일반적으로 드뭅니다.

개발자 및 사이트 운영자

  1. 정확한 요청을 수집하세요. 호스트 이름, 경로, 메서드, 요청 프로토콜, 클라이언트, 타임스탬프 및 최종 상태를 기록하세요. 응답이 실제로 505인지, 아니면 redirect 또는 다른 실패 이후 클라이언트가 표시한 상태인지 확인하세요.
  2. 프로토콜 협상을 확인하세요. 클라이언트가 사용했거나 사용하려고 한 HTTP 버전과 엔드포인트, proxy, load balancer 또는 CDN이 지원하는 버전을 확인하세요. 암호화된 연결의 경우 도구에서 확인할 수 있다면 협상된 application protocol을 검토하세요.
  3. 응답 계층을 식별하세요. 응답 헤더, 확인 가능한 경우의 서버 식별 정보, 요청 식별자 및 access log를 사용하여 505가 CDN, WAF, gateway, reverse proxy, 웹 서버 또는 애플리케이션에서 발생했는지 확인하세요.
  4. 로그를 대조하세요. 식별된 계층과 upstream 계층에서 동일한 타임스탬프, 경로, 메서드, 클라이언트 및 요청 ID를 검색하세요. origin 로그가 없다면 중간 계층이 요청을 전달하기 전에 거부했을 가능성이 있습니다.
  5. 최근 프로토콜 변경을 검토하세요. HTTP 버전 지원, proxy-to-origin 연결, load balancer listener, gateway 라우팅 및 클라이언트 또는 모니터링 설정에 영향을 준 최근 배포와 설정 변경을 확인하세요.
  6. 권한이 부여된 최소 범위의 수정만 적용하세요. 영향을 받은 클라이언트, 중간 계층 및 origin이 전체 요청 경로에서 지원되는 프로토콜 버전을 사용하도록 조정하세요. 우회 방법으로 TLS 검증, 인증 또는 보안 제어를 비활성화하지 마세요.
  7. 동일한 요청을 다시 테스트하세요. 원래 URL과 메서드를 확인한 다음 대표적인 경로와 프로토콜 경로를 테스트하세요. 수정으로 인해 관련 없는 상태 코드나 라우팅 동작이 변경되지 않았는지 확인하세요.
  8. 공유 인프라에는 통제된 rollout을 사용하세요. 영향을 받는 설정이 여러 사이트나 경로에 적용된다면 전체에 적용하기 전에 승인된 staging 환경 또는 제한된 범위의 변경으로 테스트하세요. 해당 환경의 변경 및 rollback 절차를 따르세요.

예방 및 해결 확인 방법

  • 각 요청 경로에서 클라이언트, gateway, proxy, load balancer 및 origin이 지원하는 HTTP 버전을 문서화하세요.
  • 프로토콜 또는 인프라 변경 후 실제 운영 환경과 유사한 proxy 및 CDN 경로를 통해 중요한 브라우저 경로와 API 메서드를 테스트하세요.
  • 경로, 클라이언트 유형, 프로토콜 및 배포별로 상태 코드를 모니터링하여 클라이언트별 505 응답을 확인할 수 있도록 하세요.
  • proxy, load balancer, 웹 서버 및 애플리케이션 설정을 테스트된 rollback 경로와 함께 버전 관리하세요.
  • 예상치 못한 응답을 생성한 계층을 식별할 수 있도록 상관 관계가 있는 access log와 gateway log를 충분히 오래 보관하세요.
  • 모니터링 도구와 API 클라이언트를 최신 상태로 유지하고, 도입 또는 설정 변경 시 프로토콜 설정을 검증하세요.

외부 도움을 받아야 할 때

HTTP 505가 중요한 공개 경로, 여러 클라이언트 또는 많은 사용자에게 영향을 주거나, 인프라 변경 이후 나타나거나, 공유 proxy, CDN, load balancer 또는 서버의 프로토콜 설정 변경이 필요한 경우 에스컬레이션하세요. 응답을 생성한 계층을 담당하는 팀을 참여시키고, 정제한 요청 세부 정보, 프로토콜 정보, 타임스탬프, 응답 헤더, 요청 ID 및 관련 로그를 제공하세요. 비밀번호, 쿠키, private key 또는 API secret은 절대 공유하지 마세요.

웹사이트 확인

자주 묻는 질문

HTTP 505는 웹사이트 전체가 다운되었다는 의미인가요?

아니요. HTTP 505는 해당 응답을 받은 요청에 적용됩니다. 다른 URL, 클라이언트 또는 프로토콜 경로는 계속 정상적으로 작동할 수 있습니다.

HTTP 505는 TLS 또는 SSL 오류와 같은가요?

아니요. TLS 실패가 발생하면 일반적으로 클라이언트가 HTTP 응답을 수신하지 못합니다. HTTP 505의 경우 HTTP로 통신하는 엔드포인트가 요청의 HTTP 버전을 지원하지 않는다는 상태를 반환한 것입니다.

HTTP 505가 나타날 때 DNS가 정상적으로 작동할 수 있나요?

예. 동일한 요청 경로에서 DNS가 성공적으로 해석되고 HTTP 505 응답이 반환될 수 있습니다. DNS 해석이 성공했다고 해서 이후의 모든 프로토콜 hop이 호환된다는 의미는 아닙니다.

HTTP 505가 특정 API 클라이언트에만 영향을 주는 이유는 무엇인가요?

클라이언트마다 서로 다른 HTTP 프로토콜 버전을 협상하거나 요청할 수 있으며, 서로 다른 gateway 또는 연결 설정을 사용할 수도 있습니다. 문제가 발생한 클라이언트를 정상 작동하는 클라이언트와 비교하고 프로토콜 및 응답을 생성한 계층을 확인하세요.

서버가 모든 HTTP 버전을 지원하도록 변경해야 하나요?

자동으로 변경해서는 안 됩니다. 먼저 버전 불일치와 응답을 생성한 계층을 식별하세요. 지원되는 클라이언트와 보안 설정에 맞는, 권한이 부여된 최소 범위의 호환성 변경을 적용한 다음 전체 요청 경로를 테스트하세요.

사이트 운영자에게 무엇을 보내야 하나요?

정확한 URL과 메서드, 대략적인 시각, 클라이언트 또는 도구, 확인 가능한 경우 관찰된 HTTP 버전, 상태, 응답 헤더 및 요청 ID를 보내세요. 자격 증명, 쿠키, 인증 헤더 및 기타 비밀 정보는 삭제하세요.

추가 문서

  • MDN Web Docs — HTTP 505 HTTP Version Not Supported: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/505
  • RFC 9110 — HTTP Semantics, including the definition of status code 505: https://www.rfc-editor.org/rfc/rfc9110