trace 세션의 HTTP 304 응답

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

증상

Private Cloud용 Edge에서 Edge UI에서 API를 추적할 때 추적 창의 상태 열에 HTTP 304 응답이 표시됩니다.

오류 메시지

오류 메시지가 없습니다. API 프록시 호출이 실제로 성공을 반환합니다. HTTP 200과 같은 응답을 전송합니다. 하지만 Edge UI의 trace 창에는 HTTP 304 응답이 반환되고 trace 데이터가 수집되지 않습니다.

가능한 원인

프라이빗 클라우드용 Edge에서 Edge UI가 API 프록시를 추적하려고 합니다. 외부 IP 주소를 사용하여 액세스할 수 있습니다

Edge UI의 trace 도구를 통해 모든 URL로 API 요청을 보낼 수 있습니다. Edge UI가 다른 내부 네트워크와 공동 호스팅되는 배포 시나리오 악성 사용자가 추적 도구를 오용하여 localhost 또는 127.0.0.1과 같은 비공개 IP 주소를 통해 액세스할 수 있습니다.

프로덕션 환경에서는 보통 배포가 실패하는 것을 방지하기 위해 기본값을 그대로 둡니다 비공개 IP 주소를 추적할 수 없도록 합니다. 예를 들어 Edge UI 공개 버전은 다음과 같습니다. 가상 머신을 배포해야 합니다

하지만 내부 개발 또는 테스트 환경의 경우 API 개발자가 모든 IP 주소를 추적할 수 있도록 허용합니다. 일반적으로 개발/테스트 환경은 다음과 같이 방화벽으로 보호되어 있습니다. 공개 액세스를 허용합니다.

참고: 기본값은 그대로 두는 것이 좋습니다. 개발/테스트 환경에서도 비공개 IP 주소에 대한 trace 액세스를 방지해야 합니다. 사용 설정해야 하는 상황에서는 다시 사용할 수 없습니다.

원인: 비공개 IP 주소를 통해 API 프록시에 액세스 시도

기본적으로 프라이빗 클라우드용 Edge용 Edge UI는 사용자가 비공개 IP 주소를 통해 수행된 추적 API 호출 비공개 IP 주소 목록에는 다음이 포함됩니다.

  • 루프백 주소 (127.0.0.1 또는 localhost)
  • 사이트-로컬 주소 (IPv4 - 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
  • 모든 로컬 주소 (localhost로 확인되는 모든 주소)

예를 들어 다음 curl 명령어는 비공개 IP 주소로 간주되는 127.0.0.1의 IP 주소입니다.

curl http://127.0.0.1:9001/myapiproxy

이 호출에 대한 추적 창에는 curl 명령어가 성공을 반환했는데도 HTTP 304 응답이 표시됩니다.

해상도

Edge UI가 다음에 대해 Edge의 비공개 IP 주소를 추적할 수 있도록 하려면 프라이빗 클라우드를 사용하려면 ui.properties에 다음 토큰을 설정합니다.

conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"

이 속성을 설정하는 방법은 다음과 같습니다.

  1. 편집기에서 ui.properties 파일을 엽니다. 파일이 존재하지 않으면 만듭니다
    vi /opt/apigee/customer/application/ui.properties
  2. 다음 속성을 true로 설정합니다.
    conf_apigee-base_apigee.feature.enabletraceforinternaladdresses="true"
  3. ui.properties에 변경사항을 저장합니다.
  4. 속성 파일이 'Apigee'의 소유인지 확인하세요. 사용자:
    chown apigee:apigee /opt/apigee/customer/application/ui.properties
  5. Edge UI를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

이제 Edge UI가 trace 도구의 비공개 IP 주소에 액세스할 수 있습니다.

나중에 비공개 IP 주소를 통한 요청 추적에서 UI를 사용 중지하려면 ui.properties을 수정하여 속성을 false로 설정합니다. Edge UI를 다시 시작합니다

자세한 내용은 페이지를 참조하세요. 로컬 IP 주소에 대한 Edge UI 액세스 허용을 참조하세요.