런타임 오류 카탈로그

<ph type="x-smartling-placeholder"></ph> 현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서.
정보

<ph type="x-smartling-placeholder">

Apigee Edge 오류

Apigee Edge, Apigee Edge 구성요소 라우터 및 메시지 프로세서 또는 백엔드를 통해 API 요청이 전송되면 클라이언트 응용 프로그램에 오류를 반환할 수 있습니다.

메시지 프로세서 오류

메시지 프로세서는 정책을 처리하고 메시지를 처리하는 Apigee Edge의 핵심 구성요소입니다. 백엔드 서버와 상호작용합니다 다음과 같은 문제가 감지되면 오류를 반환할 수 있습니다.

  • 네트워크 연결 문제, TLS 핸드셰이크 실패, 백엔드 서버 사용 불가, 백엔드 서버와 통신 중 응답 없음
  • 정책 수행 중 오류
  • 잘못된 HTTP 헤더, 인코딩, 경로, HTTP 사양 미준수, 다음 이유로 인한 제품 한도 초과:
    • 클라이언트 애플리케이션에서 전송되는 HTTP 요청에 의한 한도 초과
    • 또는

    • 백엔드 서버에서 전송되는 HTTP 응답에 의한 한도 초과
  • 그 외 기타 요인

메시지 프로세서의 샘플 오류

메시지 프로세서는 항상 아래 표시된 것처럼 JSON 형식의 오류 코드와 함께 오류 메시지 다음에 HTTP 상태 코드를 반환합니다.

클라이언트 애플리케이션은 다음 예시와 같은 응답 코드를 받습니다.

HTTP/1.1 414 Request-URI Too Long

메시지 프로세서의 오류 응답은 다음 형식으로 표시됩니다.

{
   "fault":{
      "faultstring":"request line size exceeding 7,168",
      "detail":{
         "errorcode":"protocol.http.TooBigLine"
      }
   }
}
드림 <ph type="x-smartling-placeholder">

오류 응답의 필 설명:

필드 설명
faultstring 오류에 대해 가능한 원인을 설명하는 오류 메시지를 포함합니다.
errorcode 오류와 연관된 오류 코드(고장 코드라고도 함)

런타임 오류 카탈로그

이 오류 카탈로그는 런타임 오류 발생 시 런타임에 대해 오류 코드 (정책 외 오류의 경우)는 Apigee Edge 메시지에서 반환됩니다. 프로세서 구성요소입니다. 여기에는 각 오류 코드에 대한 다음 정보가 포함됩니다.

  • HTTP 상태 코드
  • 오류 메시지
  • 오류에 대해 가능한 원인
  • 관련된 HTTP 사양 또는 제품 한도
  • 가능한 경우 직접 오류를 해결하기 위해 적용할 수 있도록 오류 원인과 효과적인 솔루션을 진단하기 위한 안내가 포함된 플레이북 및 동영상
  • 직접 오류를 해결하기 위해 적용할 수 있는 수정사항

다음 오류 코드 범주가 포함됩니다.

아래의 검색 상자를 사용하여 특정 오류 코드에 대해 위 정보를 표시하도록 테이블을 필터링합니다. 상태 코드 또는 테이블의 모든 필드에 있는 콘텐츠를 검색할 수 있습니다.

오류 코드 설명 수정

flow.*

flow.APITimedOut

  • HTTP 상태 코드:
504 Gateway Timeout
  • 오류 메시지:
API timed out
  • 가능한 원인:

이 오류는 다음과 같은 경우에 발생합니다.

  • 특정 API 프록시에 대해 api.timeout 속성으로 구성된 제한 시간 내에 백엔드 서버가 응답하지 않습니다.
  • 계산 집약적인 작업, 높은 로드 또는 낮은 성능으로 인해 정책에 시간이 오래 걸립니다.

참고: 이 플레이북에서는 오류 코드 문제를 해결하는 방법을 안내합니다. messaging.adaptors.http.flow.GatewayTimeout 하지만 Cloud Shell에서 동일한 플레이북을 사용하여 flow.APITimedOut 오류 코드 문제를 해결합니다.

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

flow.SharedFlowNotFound

  • HTTP 상태 코드:
500 Internal Server Error
  • 오류 메시지:
Shared Flow {shared_flow_name} Not Found
  • 가능한 원인:

이 오류는 특정 공유 흐름이 다음과 같은 상태일 때 발생합니다.

  • 존재하지 않음
  • 또는

  • 존재하지만 배포되지 않음
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

messaging.adaptors.http.flow

messaging.adaptors.http.flow.ApplicationNotFound

  • HTTP 상태 코드:
404 Not Found
  • 오류 메시지:
Unable to identify proxy for host: {virtual_host} and url: {pathsuffix}
  • 가능한 원인:

이 오류는 다음 시나리오 중 하나에서 발생합니다.

  1. 특정 API 프록시는 다음과 같습니다.
    1. 특정 가상 호스트
    2. 특정 경로에서 요청을 수락하도록 구성되지 않음 요청에 사용된
    3. 배포가 이루어진 특정 환경에 API 요청을 할 때
    4. 하나 이상의 메시지 프로세서에 배포되지 않음
  2. 어떤 환경에서 API 요청이 하나 이상의 메시지 프로세서에 로드되지 않은 경우
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북
이 오류는 여러 가상 호스트에 동일한 호스트가 있는 경우에도 발생할 수 있습니다. 별칭 및 포트 번호가 포함됩니다. <ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

messaging.adaptors.http.flow.DecompressionFailureAtRequest

  • HTTP 상태 코드:
400 Bad Request
  • 오류 메시지:
Decompression failure at request
  • 가능한 원인:

이 오류는 다음과 같은 경우에만 발생합니다.

  • HTTP 요청 헤더에 지정된 인코딩 Content-Encoding 값이 유효하고 <ph type="x-smartling-placeholder"></ph> 지원
  • 그러나

  • 클라이언트에서 HTTP 요청의 일부로 전송된 페이로드 형식이 Content-Encoding 헤더에 지정된 인코딩 형식과 일치하지 않습니다.
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

messaging.adaptors.http.flow.DecompressionFailureAtResponse

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Decompression failure at response
  • 가능한 원인:

이 오류는 다음과 같은 경우에만 발생합니다.

  • 백엔드/대상 서버의 HTTP 응답 헤더 Content-Encoding이(가) 올바르고 <ph type="x-smartling-placeholder"></ph> 지원
  • 그러나

  • 백엔드/대상 서버에서 HTTP 응답의 일부로 전송된 페이로드 형식이 Content-Encoding 헤더에 지정된 인코딩 형식과 일치하지 않습니다.
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

messaging.adaptors.http.flow.ErrorResponseCode

  • HTTP 상태 코드:
500

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 동영상

  • 오류 메시지:
오류 메시지 및 형식은 백엔드 서버 구현에 따라 다를 수 있습니다.
  • 가능한 원인:
이 오류는 백엔드 서버가 상태로 응답하는 경우에 발생합니다. 500 코드를 Apigee Edge로 전송합니다.
  • HTTP 상태 코드:
503

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 동영상

  • 오류 메시지:
오류 메시지 및 형식은 백엔드 서버 구현에 따라 다를 수 있습니다.
  • 가능한 원인:
이 오류는 백엔드 서버가 상태로 응답하는 경우에 발생합니다. 503 코드를 Apigee Edge로 전송합니다.
  • HTTP 상태 코드:
504 <ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북
  • 오류 메시지:
오류 메시지 및 형식은 백엔드 서버 구현에 따라 다를 수 있습니다.
  • 가능한 원인:
이 오류는 백엔드 서버가 상태로 응답하는 경우에 발생합니다. 504 코드를 Apigee Edge로 전송합니다.

참고: 오류 코드 messaging.adaptors.http.flow.ErrorResponseCode는 클라이언트 애플리케이션에 전송되는 오류 메시지의 일부로 반환되지 않습니다. 이것은 왜냐하면 이 오류 코드는 백엔드 서버가 구성될 때마다 Apigee Edge에서 설정되기 때문입니다. 오류 및 4XX 또는 5XX 중 하나로 응답합니다. 확인할 수 있습니다 이 오류 코드는 API 모니터링, NGINX 액세스 로그 분석 데이터베이스를 사용할 수 있습니다

messaging.adaptors.http.flow.GatewayTimeout

  • HTTP 상태 코드:
504 Gateway Timeout
  • 오류 메시지:
Gateway Timeout
  • 가능한 원인:
이 오류는 백엔드 서버가 응답하지 않는 경우에 발생합니다. 서비스 내의 Apigee Edge 메시지 프로세서에 <ph type="x-smartling-placeholder"></ph> 메시지 프로세서에 구성된 I/O 제한 시간입니다.
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

messaging.adaptors.http.flow.LengthRequired

  • HTTP 상태 코드:
411 Length Required
  • 오류 메시지:
'Content-Length' is missing
  • 가능한 원인:

이 오류는 Content-Length 헤더가 HTTP POSTPUT의 일부로 클라이언트 애플리케이션 요청을 전송합니다.

참고: 요청을 처리하고 API 프록시에서 정책을 실행하기 훨씬 전에 매우 이른 단계에서 메시지 프로세서가 검증을 수행하므로 이 오류로 인해 실패한 요청은 Trace 도구에서 캡처할 수 없습니다.

  • HTTP 사양:
RFC 섹션 3.3.2: 콘텐츠 길이

수정

이 오류를 해결하려면 다음 단계를 수행합니다.

  1. 클라이언트 애플리케이션이 항상 헤더를 전달하는지 확인 HTTP POST의 일부로 Content-Length Apigee Edge로 요청 PUT개가 전송되었습니다. 예를 들면 다음과 같습니다.

    curl -X POST https://HOSTALIAS/PATH -d '{"name": "abc"}' -H "Content-Length: 15"
    
  2. POSTPUT 요청이 있는 빈 페이로드를 전달하는 경우에도 Content-Length: 0 헤더가 전달되었는지 확인합니다. 예를 들면 다음과 같습니다.

    curl -X POST https://HOSTALIAS/PATH -H "Content-Length: 0"
    

messaging.adaptors.http.flow.NoActiveTargets

  • HTTP 상태 코드:
503 Service Unavailable
  • 오류 메시지:
The Service is temporarily unavailable
  • 가능한 원인:

이 오류는 다음 시나리오 중 하나에서 발생합니다. 사용하는 경우 <ph type="x-smartling-placeholder"></ph> TargetServer 유형:

  1. 커스텀 승인 서버에서 백엔드 서버 호스트의 DNS 확인이 잘못되어 잘못된 IP 주소로 인해 연결 오류가 발생했습니다.
  2. 다음으로 인한 연결 제한 시간 오류:
    1. 백엔드 서버의 방화벽 제한으로 인해 Apigee Edge가 백엔드 서버에 연결하지 못하도록 합니다.
    2. Apigee Edge 간 네트워크 연결 문제 백엔드 서버입니다
  3. TargetServer에 지정된 호스트가 잘못되었거나 원하지 않는 문자(예: 공백)가 있습니다.

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 동영상

이 오류는 대상 서버의 상태 점검을 모니터링하도록 구성된 상태 점검이 실패한 경우에도 발생할 수 있습니다.

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 동영상

messaging.adaptors.http.flow.RequestTimeOut

  • HTTP 상태 코드:
408 Request Timeout
  • 오류 메시지:
Request timed out
  • 가능한 원인:
이 오류는 Apigee Edge 메시지 프로세서가 클라이언트 애플리케이션에서 요청하는 페이로드를 <ph type="x-smartling-placeholder"></ph> 메시지 프로세서 구성요소에 구성된 I/O 제한 시간입니다.

수정

클라이언트 애플리케이션이 <ph type="x-smartling-placeholder"></ph> Apigee Edge의 메시지 프로세서 구성요소에 구성된 I/O 제한 시간입니다.

messaging.adaptors.http.flow.ServiceUnavailable

  • HTTP 상태 코드:
503 Service Unavailable
  • 오류 메시지:
The Service is temporarily unavailable
  • 가능한 원인:

이 오류는 다음 시나리오 중 하나에서 발생합니다.

  1. 커스텀 승인 서버에서 백엔드 서버 호스트의 DNS 확인이 잘못되어 잘못된 IP 주소로 인해 연결 오류가 발생했습니다.
  2. 다음으로 인한 연결 제한 시간 오류:
    1. 백엔드 서버의 방화벽 제한으로 인해 Apigee Edge가 백엔드 서버에 연결하지 못하도록 합니다.
    2. Apigee Edge와 Apigee Edge 간의 네트워크 연결 문제 백엔드 서버입니다
  3. 대상 엔드포인트에 지정된 대상 서버 호스트가 잘못되었거나 원하지 않는 문자(예: 공백)가 있습니다.

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

DNS 실패:

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 동영상

네트워크 연결:

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 동영상

이 오류는 메시지 프로세서가 백엔드 서버로 요청 페이로드를 계속 전송하는 동안 백엔드 서버에서 연결이 너무 일찍 종료될 경우에도 발생할 수 있습니다. <ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

messaging.adaptors.http.flow.SslHandshakeFailed

  • HTTP 상태 코드:
503 Service Unavailable
  • 오류 메시지:
SSL Handshake failed {error_message}
  • 가능한 원인:

이 오류는 Apigee Edge의 SSL 핸드셰이크 프로세스 중에 다음의 경우 메시지 프로세서 및 백엔드 서버:

  1. Apigee Edge 메시지 프로세서의 트러스트 저장소: <ph type="x-smartling-placeholder">
      </ph>
    • 백엔드 서버의 인증서 체인과 일치하지 않는 인증서 체인이 포함되어 있습니다. 전체 인증서 체인
    • 또는

    • 백엔드 서버의 전체 인증서 체인을 포함하지 않습니다.
  2. 백엔드 서버에서 제공된 인증서 체인:
    • 대상 엔드포인트에 지정된 호스트 이름과 일치하지 않는 정규화된 도메인 이름(FQDN)을 포함하는 경우
    • 또는

    • 잘못되었거나/완전하지 않은 인증서 체인을 포함하는 경우

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 동영상

messaging.adaptors.http.flow.UnexpectedEOFAtTarget

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Unexpected EOF at target
  • 가능한 원인:

이 오류는 다음 시나리오 중 하나에서 발생합니다.

  1. <ph type="x-smartling-placeholder"></ph> TargetServer가 TLS/SSL 연결을 지원하도록 올바르게 구성되지 않았습니다. Apigee Edge입니다
  2. 백엔드 서버가 연결을 갑자기 닫을 수 있습니다. 대기하는 동안 백엔드 서버의 응답을 기다립니다
  3. Apigee 및 백엔드 서버에 연결 유지 제한 시간이 잘못 구성되었습니다.
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

messaging.runtime.*

messaging.runtime.RouteFailed

  • HTTP 상태 코드:
500 Internal Server Error
  • 오류 메시지:
Unable to route the message to a TargetEndpoint
  • 가능한 원인:

이 오류는 Apigee Edge에서 요청을 TargetEndpoint 이유:

  • 프록시의 요청과 일치하는 경로 규칙(<RouteRule>) 조건이 없습니다.
  • AND

  • ProxyEndpoint에 정의된 기본 경로 규칙이 없습니다(즉, 조건 없이 <RouteRule>).

수정

이 오류를 해결하려면 다음 안내를 따르세요.

  1. ProxyEndpoint에 정의된 경로 규칙을 검토하고 요청과 일치하는 경로 규칙 조건이 하나 이상 있도록 수정합니다.
  2. 여러 RouteRule이 있는 경우에는 조건 없이 기본 경로 규칙을 정의하는 것이 좋습니다.
  3. 규칙은 ProxyEndpoint에서 하향식으로 평가되므로 기본 라우팅 규칙이 항상 조건부 경로 목록에서 마지막으로 정의되었는지 확인합니다.

ProxyEndpoint에서 <RouteRule> 조건 정의에 대해 자세히 알아보려면 조건부 대상을 참조하세요.

messaging.runtime.SenseRaiseFault

  • HTTP 상태 코드:
403 Forbidden
  • 오류 메시지:
Sense Fault
  • 가능한 원인:
이 오류는 특정 클라이언트 IP 주소에서 API 요청을 할 때 발생합니다. 이는 Apigee Sense 규칙의 일부로 차단됩니다.

수정

이 오류를 해결하려면 다음 안내를 따르세요.

  1. 다음을 수행하여 특정 클라이언트 IP 주소를 차단했는지 확인합니다. <ph type="x-smartling-placeholder"></ph> Apigee Sense에 구성된 규칙 확인 차단된 경우 정상적으로 작동하고 있다는 뜻입니다.
  2. 특정 클라이언트 IP 주소가 차단되지 않았지만 여전히 이 오류가 발생하면 Apigee Edge 지원팀에 문의하세요.

protocol.http.* - Caused due to bad request

protocol.http.BadFormData

  • HTTP 상태 코드:
500 Internal Server Error
  • 오류 메시지:
Bad Form Data
  • 가능한 원인:

이 오류는 다음 조건이 모두 충족된 경우에만 발생합니다.

  1. 클라이언트가 Apigee Edge로 보낸 HTTP 요청입니다. 포함: <ph type="x-smartling-placeholder">
      </ph>
    • Content-Type: application/x-www-form-urlencoded
    • 퍼센트 기호(%)가 있는 양식 데이터 또는 퍼센트 기호(%)에 이어 양식 - 섹션 17.13.4.1에 따라 허용되지 않는 잘못된 16진수 문자가 표시됩니다.
  2. Apigee Edge의 API 프록시가 특정 형식을 읽습니다. 사용할 수 없는 문자를 포함한 매개변수는 요청 흐름에서 ExtractVariables 또는AssignMessage 정책을 사용합니다.
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.DuplicateHeader

  • HTTP 상태 코드:
400 Bad Request
  • 오류 메시지:
Duplicate Header "{header_name}"
  • 가능한 원인:
이 오류는 중복이 허용되지 않는 특정 HTTP 헤더가 있을 때 발생합니다. 가 함께 두 번 이상 표시되는 경우 클라이언트 애플리케이션에서 Apigee Edge로 보낸 HTTP 요청입니다.
  • HTTP 사양:
RFC 7230, 섹션 3.2.2: 필드 순서
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.EmptyHeaderName

  • HTTP 상태 코드:
400 Bad Request
  • 오류 메시지:
Header name cannot be empty
  • 가능한 원인:
이 오류는 헤더 이름이 HTTP Apigee Edge에 대한 클라이언트 애플리케이션의 요청이 비어 있습니다.
  • HTTP 사양:
RFC 7230, 섹션 3.2: 헤더 필드

수정

클라이언트 애플리케이션에서 전송한 HTTP 요청이 항상 유효한 헤더 이름을 포함하여 <ph type="x-smartling-placeholder"></ph> RFC 7230, 섹션 3.2: 헤더 필드

protocol.http.HeaderNameWithNonAsciiChar

  • HTTP 상태 코드:
400 Bad Request
  • 오류 메시지:
Header {header_name} contains non ascii character {character}
  • 가능한 원인:
이 오류는 헤더 이름이 HTTP 요청의 일부로 전송된 경우 발생합니다. ASCII가 아닌 문자가 포함되어 있습니다.
  • HTTP 사양:

RFC 7230, 섹션 3.2: 헤더 필드RFC 7230, 섹션 3.2.6: 필드 값 구성요소

수정

클라이언트의 HTTP 요청이 Apigee Edge는 <ph type="x-smartling-placeholder"></ph> RFC 7230, 섹션 3.2.6: 필드 값 구성요소를 참조하세요.

protocol.http.HeaderWithInvalidChar

  • HTTP 상태 코드:
400 Bad Request
  • 오류 메시지:
Header {header_name} contains invalid character {character}
  • 가능한 원인:
이 오류는 헤더 이름이 HTTP 요청의 일부로 전송된 경우 발생합니다. 클라이언트 애플리케이션에서 Apigee Edge에 보내는 요청에 잘못된 문자(예: 같음 (=), 쉼표 (,), 세미콜론 (;), 탭, CRLF, 뉴라인 문자
  • HTTP 사양:

RFC 7230, 섹션 3.2: 헤더 필드RFC 7230, 섹션 3.2.6: 필드 값 구성요소

수정

클라이언트 애플리케이션에서 Apigee Edge로 보낸 HTTP 요청이 다음 명령어를 사용하지 않는지 확인합니다. 에 따라 헤더 이름에 잘못된 문자가 포함되어 있으면 <ph type="x-smartling-placeholder"></ph> RFC 7230, 섹션 3.2.6: 필드 값 구성요소

protocol.http.InvalidPath

  • HTTP 상태 코드:
400 Bad Request
  • 오류 메시지:
Invalid path {path}
  • 가능한 원인:
이 오류는 클라이언트 애플리케이션에서 HTTP 요청 URL의 경로를 보내는 경우 발생합니다. 에 사양에서 허용되지 않는 문자가 포함되어 있습니다. RFC 3986, 섹션 3.3: 경로.
  • HTTP 사양:

RFC 3986, 섹션 3: 구문 구성요소RFC 3986, 섹션 3.3: 경로

수정

클라이언트에서 전송한 HTTP 요청 URL의 경로가 애플리케이션을 Apigee Edge에 <ph type="x-smartling-placeholder"></ph> RFC 3986, 섹션 3.3: 경로에 따라 다릅니다.

protocol.http.TooBigBody

  • HTTP 상태 코드:
413 Request Entity Too Large
  • 오류 메시지:
Body buffer overflow
  • 가능한 원인:
이 오류는 클라이언트 애플리케이션에서 페이로드 크기가 Apigee Edge에 대한 HTTP 요청이 Apigee Edge의 허용 한도보다 큽니다.
  • 제한사항:
Apigee Edge 한도
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.TooBigHeaders

  • HTTP 상태 코드:
431 Request Header Fields Too Large
  • 오류 메시지:
request headers size exceeding {limit}
  • 가능한 원인:
클라이언트가 보낸 모든 요청 헤더의 전체 크기 Apigee Edge에 대한 HTTP 요청의 일부로 포함된 애플리케이션이 허용되는 크기보다 큽니다. 한도에 도달할 수 있습니다
  • HTTP 사양:
RFC 6585, 섹션 5: 431 요청 헤더 필드가 너무 큼
  • 제한사항:
<ph type="x-smartling-placeholder"></ph> Apigee Edge 한도
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.TooBigLine

  • HTTP 상태 코드:
414 Request-URI Too Long
  • 오류 메시지:
request line size exceeding {limit}
  • 가능한 원인:
이 오류는 클라이언트 애플리케이션에서 전송한 요청 줄의 크기가 가 Apigee Edge입니다.
  • 제한사항:
Apigee Edge 한도
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.UnsupportedEncoding

  • HTTP 상태 코드:
415 Unsupported Media
  • 오류 메시지:
Unsupported Encoding "{encoding}"
  • 가능한 원인:
이 오류는 클라이언트가 보낸 Content-Encoding 헤더가 HTTP 응답에 포함되지 않은 인코딩/페이로드 형식이 <ph type="x-smartling-placeholder"></ph> Apigee Edge에서 지원됩니다.
  • HTTP 사양:
RFC 7231, 섹션 6.5.13: 415 지원되지 않는 미디어 유형
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.* - Caused by target

protocol.http.BadPath

  • HTTP 상태 코드:
500 Internal Server Error
  • 오류 메시지:
Invalid request path
  • 가능한 원인:
이 오류는 흐름 변수 target.url로 표시된 백엔드 서버의 요청 URL에 슬래시(/) 대신 잘못된 물음표(?)로 시작하는 경로가 포함된 경우에 발생합니다.
  • HTTP 사양:

RFC 3986, 섹션 3: 구문 구성요소RFC 3986, 섹션 3.3: 경로

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.DuplicateHeader

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Duplicate Header "{header_name}"
  • 가능한 원인:
이 오류는 중복이 허용되지 않는 특정 HTTP 헤더가 가 함께 두 번 이상 나타날 때 백엔드 서버에서 Apigee Edge로 보낸 HTTP 응답입니다.
  • HTTP 사양:
RFC 7230, 섹션 3.2.2: 필드 순서
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.EmptyHeaderName

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Header name cannot be empty
  • 가능한 원인:
이 오류는 백엔드 서버에서 HTTP 헤더 이름을 전송한 경우 Apigee Edge에 대한 응답이 비어 있습니다.
  • HTTP 사양:
RFC 7230, 섹션 3.2: 헤더 필드

수정

백엔드에서 전송한 HTTP 응답이 맞는지 확인합니다. Apigee Edge 서버에 대한 요청에 따라 항상 유효한 헤더 이름이 포함됩니다. <ph type="x-smartling-placeholder"></ph> RFC 7230, 섹션 3.2: 헤더 필드

protocol.http.EmptyPath

  • HTTP 상태 코드:
500 Internal Server Error
  • 오류 메시지:
Request path cannot be empty
  • 가능한 원인:
이 오류는 흐름 변수 target.url로 표시되는 백엔드 서버의 HTTP 요청 URL에 빈 경로가 포함된 경우에 발생합니다.
  • HTTP 사양:

RFC 3986, 섹션 3: 구문 구성요소RFC 3986, 섹션 3.3: 경로

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.HeaderNameWithNonAsciiChar

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Header {header_name} contains non ascii character {character}
  • 가능한 원인:
이 오류는 Apigee Edge에 대한 HTTP 응답의 일부로 백엔드 서버에 의해 전송되는 헤더 이름에 비ASCII 문자가 포함된 경우에 발생합니다.
  • HTTP 사양:

RFC 7230, 섹션 3.2: 헤더 필드RFC 7230, 섹션 3.2.6: 필드 값 구성요소

수정

백엔드 서버의 HTTP 응답이 Apigee Edge는 <ph type="x-smartling-placeholder"></ph> RFC 7230, 섹션 3.2.6: 필드 값 구성요소를 참조하세요.

protocol.http.HeaderWithInvalidChar

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Header {header_name} contains invalid character {character}
  • 가능한 원인:
이 오류는 HTTP 응답의 일부로 백엔드 서버에 의해 전송되는 헤더 이름에 같음(=), 쉼표(,), 세미콜론(;), 탭, CRLF, 줄바꿈 문자와 같은 잘못된 문자가 포함된 경우에 발생합니다.
  • HTTP 사양:

RFC 7230, 섹션 3.2: 헤더 필드RFC 7230, 섹션 3.2.6: 필드 값 구성요소

수정

Apigee Edge로 전송된 백엔드 서버의 HTTP 응답에 포함되지 않았는지 확인하세요. 에 따라 헤더 이름에 잘못된 문자가 포함되어 있음 <ph type="x-smartling-placeholder"></ph> RFC 7230, 섹션 3.2.6: 필드 값 구성요소

protocol.http.ProxyTunnelCreationFailed

  • HTTP 상태 코드:
503 Service Unavailable
  • 오류 메시지:
Proxy refused to create tunnel with response status {status code}
  • 가능한 원인:

이 오류는 Apigee Edge와 방화벽, ACL (액세스 제어 목록), DNS로 인해 프록시 서버에 의한 백엔드 서버 백엔드 서버 가용성 등입니다.

참고: 오류 메시지의 상태 코드(faultstring)는 대략적인 문제의 원인을 설명합니다.

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.Response306Reserved

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Response Status code 306 is reserved, so can't be used.
  • 가능한 원인:

이 오류는 백엔드 서버가 다음과 같이 응답한 경우에 발생합니다. 306 상태 코드를 Apigee Edge로 보냅니다.

306 상태 코드는 HTTP 사양의 이전 버전에 정의되어 있습니다. 현재 HTTP 사양에 따라 이 코드는 예약되어 있으며 사용하지 않아야 합니다.

  • HTTP 사양:
RFC 7231, 섹션 6.3.5: 306 예약됨

수정

상태 코드 306이 예약되어 있으므로 백엔드 서버에서 이 상태 코드를 사용하지 않고 Apigee Edge에 대한 응답입니다.

protocol.http.Response405WithoutAllowHeader

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Received 405 Response without Allow Header
  • 가능한 원인:
백엔드 서버는 'Allow' 헤더 없이 405 Method Not Allowed 상태 코드를 사용하여 응답합니다.
  • HTTP 사양:

RFC 7231, 섹션 6.5.5: 405 메서드 허용되지 않음 RFC 7231, 섹션 7.4.1: 허용

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.ResponseWithBody

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Received {status_code} Response with message body
  • 가능한 원인:

이 오류는 Apigee Edge에 대한 백엔드 서버의 HTTP 응답이 다음과 같은 경우에 발생합니다. 204 No Content 또는 205 Reset Content이지만 응답 본문 및/또는 다음 헤더 중 하나 이상을 포함합니다.

  • Content-Length
  • Content-Encoding
  • Transfer-Encoding
  • HTTP 사양:

RFC 7231, 섹션 6.3.5: 204 콘텐츠 없음RFC 7231, 섹션 6.3.6: 205 콘텐츠 재설정

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.TooBigBody

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
Body buffer overflow
  • 가능한 원인:
이 오류는 클라이언트 애플리케이션에서 페이로드 크기가 Apigee Edge에 대한 HTTP 요청이 Apigee Edge의 허용 한도보다 큽니다.
  • 제한사항:
Apigee Edge 한도
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.TooBigHeaders

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
response headers size exceeding {limit}
  • 가능한 원인:
이 오류는 서버에서 전송한 모든 응답 헤더의 총 크기가 백엔드 서버가 Apigee Edge에 대한 HTTP 응답의 일부인 허용되는 한도를 보여줍니다
  • 제한사항:
<ph type="x-smartling-placeholder"></ph> Apigee Edge 한도
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.TooBigLine

  • HTTP 상태 코드:
502 Bad Gateway
  • 오류 메시지:
response line size exceeding {limit}
  • 가능한 원인:
이 오류는 백엔드 서버에서 전송한 응답 줄의 크기가 Apigee Edge에 대한 HTTP 응답의 일부가 Apigee에서 허용되는 한도보다 큽니다. Edge.
  • 제한사항:
Apigee Edge 한도
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

protocol.http.UnsupportedEncoding

  • HTTP 상태 코드:
415 Unsupported Media
  • 오류 메시지:
Unsupported Encoding "{encoding}"
  • 가능한 원인:
이 오류는 Content-Encoding 헤더가 HTTP 응답의 일부인 백엔드 서버에 인코딩/페이로드가 포함되어 있습니다. 형식이 <ph type="x-smartling-placeholder"></ph> Apigee Edge에서 지원됩니다.
  • HTTP 사양:
RFC 7231, 섹션 6.5.13: 415 지원되지 않는 미디어 유형
<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 플레이북

security.util.*

security.util.KeyAliasNotFound

  • HTTP 상태 코드:
500 Internal Server Error
  • 오류 메시지:
KeyAlias {KeyAlias_name} is not found in Keystore {Keystore_Name}
  • 가능한 원인:

이 오류는 TargetEndpoint 또는 TargetServer에서 참조되는 특정 KeyAlias를 특정 키 저장소에서 찾을 수 없는 경우에 발생합니다.

수정

TargetEndpoint 또는 TargetServer에 지정된 KeyAlias가 존재하고 특정 키 저장소의 일부인지 확인합니다.

security.util.TrustStoreWithNoCertificates

  • HTTP 상태 코드:
500 Internal Server Error
  • 오류 메시지:
TrustStore {truststore_name} has no certificates
  • 가능한 원인:

이 오류는 TargetEndpoint 또는 TargetServer에서 참조되는 특정 트러스트 저장소가 인증서를 포함하지 않는 경우에 발생합니다.

수정

백엔드 서버의 인증서를 검증하고 TargetEndpoint 또는 TargetServer에서 트러스트 저장소를 사용하려는 경우 트러스트 저장소에 백엔드 서버의 올바른 인증서가 포함되었는지 확인합니다.