정책을 통한 오리진 요청 제어
CloudFront에 대한 최종 사용자 요청이 캐시 누락로 나타나는 경우(요청된 객체가 엣지 로케이션에 캐싱되지 않음) CloudFront는 오리진에 요청을 보내 객체를 검색합니다. 이를 오리진 요청이라고 합니다. 오리진 요청에는 다음과 같은 최종 사용자 요청의 정보가 항상 포함됩니다.
-
URL 경로(경로 전용, URL 쿼리 문자열 또는 도메인 이름 제외)
-
요청 본문(있는 경우)
-
CloudFront에서 모든 오리진 요청에 자동으로 포함하는 HTTP 헤더(
Host
,User-Agent
,X-Amz-Cf-Id
등)
URL 쿼리 문자열, HTTP 헤더 및 쿠키와 같은 최종 사용자 요청의 기타 정보는 기본적으로 오리진 요청에 포함되지 않습니다. (예외: 레거시 캐시 설정의 경우 CloudFront는 기본적으로 헤더를 오리진에 전달합니다.) 그러나 분석 또는 원격 분석을 위해 데이터를 수집하는 등 오리진에서 이러한 다른 정보 중 일부를 수신할 수 있습니다. 오리진 요청 정책을 사용하여 오리진 요청에 포함된 정보를 제어할 수 있습니다.
오리진 요청 정책은 캐시 키를 제어하는 캐시 정책과 별개입니다. 이를 통해 오리진에서 추가 정보를 수신하고 적절한 캐시 적중률(캐시 적중으로 나타나는 뷰어 요청의 비율)을 유지할 수 있습니다. 오리진 요청에 포함되는 정보(오리진 요청 정책 사용)와 캐시 키에 포함되는 정보(캐시 정책 사용)를 별도로 제어하면 됩니다.
두 종류의 정책은 별개이지만 서로 관련이 있습니다. 캐시 정책을 사용하여 캐시 키에 포함하는 모든 URL 쿼리 문자열, HTTP 헤더 및 쿠키는 오리진 요청에 자동으로 포함됩니다. 오리진 요청 정책을 사용하여 오리진 요청에 포함하지만 캐시 키에는 포함하지 않을 정보를 지정합니다. 캐시 정책과 마찬가지로 오리진 요청 정책을 CloudFront 배포에 있는 하나 이상의 캐시 동작에 연결합니다.
오리진 요청 정책을 사용하여 최종 사용자 요청에 포함되지 않은 오리진 요청에 HTTP 헤더를 추가할 수도 있습니다. 이러한 추가 헤더는 오리진 요청을 보내기 전에 CloudFront에서 추가되며, 헤더 값은 최종 사용자 요청에 따라 자동으로 결정됩니다. 자세한 내용은 CloudFront 요청 헤더 추가 단원을 참조하십시오.