응답 헤더 정책 이해 - Amazon CloudFront

응답 헤더 정책 이해

응답 헤더 정책을 사용하여 Amazon CloudFront가 사용자에게 보내는 응답에서 추가 또는 제거하는 HTTP 헤더를 지정할 수 있습니다. 응답 헤더 정책 및 사용 이유에 대한 자세한 내용은 정책을 통해 CloudFront 응답에서 HTTP 헤더 추가 또는 제거 단원을 참조하세요.

다음 항목에서는 응답 헤더 정책의 설정에 대해 설명합니다. 설정은 다음 항목에 나와 있는 범주로 그룹화됩니다.

정책 세부 정보(메타데이터)

정책 세부 정보 설정에는 응답 헤더 정책에 대한 메타데이터가 포함되어 있습니다.

  • 이름 — 응답 헤더 정책을 식별하는 이름입니다. 콘솔에서 이름을 사용하여 정책을 캐시 동작에 연결합니다.

  • 설명(선택 사항) — 응답 헤더 정책을 설명하는 설명입니다. 이는 선택 사항이지만 캐시 정책의 용도를 식별하는 데 도움이 될 수 있습니다.

CORS 헤더

교차 원본 리소스 공유(CORS) 설정을 사용하면 응답 헤더 정책에 CORS 헤더를 추가하고 구성할 수 있습니다.

이 목록은 응답 헤더 정책에서 설정 및 유효한 값을 지정하는 방법에 중점을 둡니다. 이러한 각 헤더와 실제 CORS 요청 및 응답에 사용되는 방법에 대한 자세한 내용은 MDN 웹 문서 및 CORS 프로토콜 사양원본 간 리소스 공유를 참조하세요.

Access-Control-Allow-Credentials

이는 부울 설정(true 또는 false)으로서 CloudFront에서 CORS 요청에 대한 응답으로 Access-Control-Allow-Credentials 헤더를 추가할지 여부를 결정합니다. 이 설정이 true로 설정된 경우, CloudFront는 CORS 요청에 대한 응답으로 Access-Control-Allow-Credentials: true 헤더를 추가합니다. 그렇지 않으면 CloudFront가 응답에 이 헤더를 추가하지 않습니다.

Access-Control-Allow-Headers

CloudFront가 CORS 실행 전 요청에 대한 응답에서 Access-Control-Allow-Headers 헤더 값으로 사용하는 헤더 이름을 지정합니다. 이 설정의 유효한 값으로는 HTTP 헤더 이름 또는 모든 헤더가 허용됨을 나타내는 와일드카드 문자(*)가 포함됩니다.

참고

Authorization 헤더는 와일드카드를 사용할 수 없으며 명시적으로 나열해야 합니다.

유효한 와일드카드 문자 사용의 예시
매칭함 매칭하지 않음

x-amz-*

x-amz-test

x-amz-

x-amz

x-*-amz

x-test-amz

x--amz

* Authorization을 제외한 모든 헤더 Authorization
Access-Control-Allow-Methods

CloudFront가 CORS 실행 전 요청에 대한 응답에서 Access-Control-Allow-Methods 헤더 값으로 사용하는 HTTP 메서드를 지정합니다. 유효한 값은 GET, DELETE, HEAD, OPTIONS, PATCH, POST, PUT 또는 ALL입니다. ALL는 나열된 모든 HTTP 메서드를 포함하는 특수 값입니다.

Access-Control-Allow-Origin

CloudFront에서 Access-Control-Allow-Origin 응답 헤더에 사용할 수 있는 값을 지정합니다. 이 설정의 유효한 값에는 특정 원본(예: http://www.example.com) 또는 모든 원본이 허용됨을 나타내는 와일드카드 문자(*)가 포함됩니다. 예를 들어, 다음 표를 참조하세요.

참고

와일드카드 문자(*)는 도메인(*.example.org)의 가장 왼쪽 부분으로 사용할 수 있습니다.

와일드카드 문자(*)는 다음 위치에 사용할 수 없습니다.

  • 상위 수준 도메인(example.*)

  • 하위 도메인 오른쪽(test.*.example.org)

  • 용어 내부(exa*mple.org)

유효한 와일드카드 문자 사용의 예는 다음 표에 나와 있습니다.

매칭함 매칭하지 않음

http://*.example.org

http://www.example.org

http://test.example.org

http://test.example.org:123

https://test.example.org

https://test.example.org:123

*.example.org

test.example.org

test.test.example.org

.example.org

http://test.example.org

https://test.example.org

http://test.example.org:123

https://test.example.org:123

example.org

http://example.org

https://example.org

http://example.org

https://example.org

http://example.org:123

http://example.org:*

http://example.org:123

http://example.org

http://example.org:1*3

http://example.org:123

http://example.org:1893

http://example.org:13

*.example.org:1*

test.example.org:123

Access-Control-Expose-Headers

CloudFront가 CORS 요청에 대한 응답에서 Access-Control-Expose-Headers 헤더 값으로 사용하는 헤더 이름을 지정합니다. 이 설정의 유효한 값으로는 HTTP 헤더 이름 또는 와일드카드 문자(*)가 포함됩니다.

Access-Control-Max-Age

CloudFront가 CORS 실행 전 요청에 대한 응답에서 Access-Control-Max-Age 헤더 값으로 사용하는 시간(초)입니다.

원본 재정의

오리진의 응답에 정책에도 포함된 CORS 헤더 중 하나가 포함된 경우 CloudFront가 작동하는 방식을 결정하는 부울 설정입니다.

  • true로 설정되고 오리진 응답에 정책에도 있는 CORS 헤더가 포함되어 있으면 CloudFront는 응답에 정책의 CORS 헤더를 추가합니다. 그런 다음 CloudFront는 해당 응답을 최종 사용자에게 보냅니다. CloudFront는 오리진에서 수신한 헤더는 무시합니다.

  • false로 설정되고 오리진 응답에 CORS 헤더가 포함되어 있으면(CORS 헤더가 정책에 포함되어 있는지 여부에 상관없이) CloudFront는 응답에 오리진에서 수신한 CORS 헤더를 포함합니다. CloudFront는 최종 사용자에게 보내는 응답에 정책의 CORS 헤더를 추가하지 않습니다.

보안 헤더

보안 헤더 설정을 사용하면 응답 헤더 정책에서 여러 보안 관련 HTTP 응답 헤더를 추가하고 구성할 수 있습니다.

이 목록은 응답 헤더 정책에서 설정 및 유효한 값을 지정하는 방법을 설명합니다. 이러한 각 헤더와 실제 HTTP 응답에서 사용되는 방법에 대한 자세한 내용은 MDN 웹 문서 링크를 참조하세요.

Content-Security-Policy

CloudFront가 Content-Security-Policy 응답 헤더의 값으로 사용하는 콘텐츠 보안 정책 지시문을 지정합니다.

이 헤더 및 유효한 정책 지시문에 대한 자세한 내용은 MDN 웹 문서의 Content-Security-Policy를 참조하십시오.

참고

Content-Security-Policy 헤더 값은 1783자로 제한됩니다.

참조자 정책

CloudFront가 Referrer-Policy 응답 헤더의 값으로 사용하는 참조자 정책 지시문을 지정합니다. 이 설정에 유효한 값은 no-referrer, no-referrer-when-downgrade, origin, origin-when-cross-origin, same-origin, strict-origin, strict-origin-when-cross-origin 또는 unsafe-url입니다.

이 헤더 및 이러한 지시문에 대한 자세한 내용은 MDN 웹 문서의 Referrer-Policy를 참조하십시오.

Strict-Transport-Security

CloudFront가 Strict-Transport-Security 응답 헤더의 값으로 사용하는 지시문 및 설정을 지정합니다. 이 설정의 경우 다음을 별도로 지정합니다.

  • CloudFront가 이 헤더의 max-age 지시문에 대한 값으로 사용하는 시간(초)

  • CloudFront가 이 헤더 값에 preload 지시문을 포함하는지 여부를 결정하는 preload에 대한 부울 설정(true 또는 false)

  • CloudFront가 이 헤더 값에 includeSubDomains 지시문을 포함하는지 여부를 결정하는 includeSubDomains에 대한 부울 설정(true 또는 false)

이 헤더 및 이러한 지시문에 대한 자세한 내용은 MDN 웹 문서의 Strict-Transport-Security를 참조하십시오.

X-Content-Type-Options

이는 부울 설정(true 또는 false)으로서 CloudFront에서 응답으로 X-Content-Type-Options 헤더를 추가할지 여부를 결정합니다. 이 설정이 true인 경우, CloudFront는 응답에 X-Content-Type-Options: nosniff 헤더를 추가합니다. 그렇지 않으면 CloudFront는 이 헤더를 추가하지 않습니다.

이 헤더에 대한 자세한 내용은 MDN 웹 문서의 X-Content-Type-Options를 참조하십시오.

X-Frame-Options

CloudFront가 X-Frame-Options 응답 헤더의 값으로 사용하는 지시문을 지정합니다. 이 설정에 유효한 값은 DENY 또는 SAMEORIGIN입니다.

이 헤더 및 이러한 지시문에 대한 자세한 내용은 MDN 웹 문서의 X-Frame-Options를 참조하십시오.

X-XSS-Protection

CloudFront가 X-XSS-Protection 응답 헤더의 값으로 사용하는 지시문 및 설정을 지정합니다. 이 설정의 경우 다음을 별도로 지정합니다.

  • 0(XSS 필터링 비활성화) 또는 1(XSS 필터링 활성화) X-XSS-Protection 설정

  • CloudFront가 이 헤더 값에 mode=block 지시문을 포함하는지 여부를 결정하는 block에 대한 부울 설정(true 또는 false)

  • CloudFront가 이 헤더 값에 report=reporting URI 지시문을 포함하는지 여부를 결정하는 보고 URI

block에 대해 true를 지정하거나 보고 URI를 지정할 수 있지만 둘 다 함께 지정할 수는 없습니다. 이 헤더 및 이러한 지시문에 대한 자세한 내용은 MDN 웹 문서의 X-XSS-Protection를 참조하십시오.

원본 재정의

이러한 각 보안 헤더 설정에는 원본의 응답에 해당 헤더가 포함되어 있을 때 CloudFront가 작동하는 방식을 결정하는 부울 설정(true 또는 false)이 포함되어 있습니다.

이 설정이 true로 설정되고 원본 응답에 헤더가 포함되어 있으면 CloudFront는 뷰어에게 보내는 응답에 정책의 헤더를 추가합니다. 그리고 원본에서 수신한 헤더는 무시합니다.

이 설정이 false로 설정되고 원본 응답에 헤더가 포함된 경우 CloudFront는 뷰어에게 보내는 응답에 원본에서 수신한 헤더를 포함합니다.

원본 응답에 헤더가 포함되어 있지 않으면 CloudFront는 뷰어에게 보내는 응답에 정책의 헤더를 추가합니다. 이 설정이 true이든 false이든 관계없이 CloudFront는 이 작업을 수행합니다.

사용자 지정 헤더

사용자 지정 헤더 설정을 사용하면 응답 헤더 정책에 사용자 지정 HTTP 헤더를 추가하고 구성할 수 있습니다. CloudFront는 이러한 헤더를 뷰어에게 반환하는 모든 응답에 추가합니다. 값을 지정하는 것은 선택 사항이지만 각 사용자 지정 헤더에 헤더 값도 지정합니다. CloudFront가 값 없이 응답 헤더를 추가할 수 있기 때문입니다.

각 사용자 정의 헤더에는 고유한 원본 재정의 설정도 있습니다.

  • 이 설정이 true로 설정되고 원본 응답에 정책에 있는 사용자 지정 헤더가 포함되어 있으면 CloudFront는 뷰어에게 보내는 응답에 정책의 사용자 지정 헤더를 추가합니다. 그리고 원본에서 수신한 헤더는 무시합니다.

  • 이 설정이 false이고 원본 응답에 정책에 있는 사용자 지정 헤더가 포함되어 있으면 CloudFront는 뷰어에게 보내는 응답에 원본에서 수신한 사용자 지정 헤더를 포함합니다.

  • 원본 응답에 정책에 있는 사용자 지정 헤더가 포함되어 있지 않으면 CloudFront는 뷰어에게 보내는 응답에 정책의 사용자 지정 헤더를 추가합니다. 이 설정이 true이든 false이든 관계없이 CloudFront는 이 작업을 수행합니다.

헤더 제거

CloudFront가 오리진으로부터 받는 응답에서 제거할 헤더를 지정하여 CloudFront가 최종 사용자에게 보내는 응답에 헤더가 포함되지 않도록 할 수 있습니다. CloudFront는 객체가 CloudFront의 캐시에서 제공되든 오리진에서 제공되든 관계없이 최종 사용자에게 보내는 모든 응답에서 헤더를 제거합니다. 예를 들어 X-Powered-By 또는 Vary 같이 브라우저에 사용되지 않는 헤더를 제거하여 CloudFront가 최종 사용자에게 보내는 응답에서 이러한 헤더를 제거하도록 할 수 있습니다.

응답 헤더 정책을 사용하여 제거할 헤더를 지정하면 CloudFront는 먼저 헤더를 제거한 다음 응답 헤더 정책의 다른 섹션(CORS 헤더, 보안 헤더, 사용자 지정 헤더 등)에 지정된 헤더를 추가합니다. 제거할 헤더를 지정하고 정책의 다른 섹션에 동일한 헤더를 추가하는 경우 CloudFront는 최종 사용자에게 보내는 응답에 해당 헤더를 포함합니다.

참고

응답 헤더 정책을 사용하여 CloudFront가 오리진에서 수신한 ServerDate 헤더를 제거하여 이러한 헤더(오리진에서 수신됨)가 CloudFront가 최종 사용자에게 보내는 응답에 포함되지 않도록 할 수 있습니다. 하지만 이렇게 하면 CloudFront가 최종 사용자에게 보내는 응답에 해당 버전을 추가합니다. CloudFront가 추가하는 Server 헤더의 헤더 값은 CloudFront입니다.

제거할 수 없는 헤더

응답 헤더 정책을 사용하여 다음 헤더를 제거할 수 없습니다. 응답 헤더 정책(API ResponseHeadersPolicyRemoveHeadersConfig)의 Remove headers(헤더 제거) 섹션에서 이러한 헤더를 지정하면 오류가 발생합니다.

  • Connection

  • Content-Encoding

  • Content-Length

  • Expect

  • Host

  • Keep-Alive

  • Proxy-Authenticate

  • Proxy-Authorization

  • Proxy-Connection

  • Trailer

  • Transfer-Encoding

  • Upgrade

  • Via

  • Warning

  • X-Accel-Buffering

  • X-Accel-Charset

  • X-Accel-Limit-Rate

  • X-Accel-Redirect

  • X-Amz-Cf-.*

  • X-Amzn-Auth

  • X-Amzn-Cf-Billing

  • X-Amzn-Cf-Id

  • X-Amzn-Cf-Xff

  • X-Amzn-ErrorType

  • X-Amzn-Fle-Profile

  • X-Amzn-Header-Count

  • X-Amzn-Header-Order

  • X-Amzn-Lambda-Integration-Tag

  • X-Amzn-RequestId

  • X-Cache

  • X-Edge-.*

  • X-Forwarded-Proto

  • X-Real-Ip

Server-Timing 헤더

Server-Timing 헤더 설정을 사용하여 CloudFront에서 보낸 HTTP 응답에서 Server-Timing 헤더를 사용 설정합니다. 이 헤더를 사용하여 CloudFront 및 원본의 동작 및 성능에 대한 인사이트를 제공하는 지표를 볼 수 있습니다. 예를 들어 캐시 적중률을 제공한 캐시 계층을 확인할 수 있습니다. 또는 캐시 누락이 발생한 경우 원본에서 첫 번째 바이트 대기 시간을 확인할 수 있습니다. Server-Timing 헤더의 지표는 문제를 해결하거나 CloudFront 또는 원본 구성의 효율성을 테스트하는 데 도움이 될 수 있습니다.

CloudFront에서 Server-Timing 헤더 사용에 대한 자세한 내용은 다음 주제를 참조하세요.

Server-Timing 헤더를 사용 설정하려면 응답 헤더 정책을 생성(또는 편집)합니다.

샘플링 속도 및 Pragma 요청 헤더

응답 헤더 정책에서 Server-Timing 헤더를 사용 설정할 때 샘플링 속도도 지정합니다. 샘플링 속도는 CloudFront가 Server-Timing 헤더를 추가할 응답의 비율을 지정하는 0~100(포함)의 숫자입니다. 샘플링 속도를 100으로 설정하면 CloudFront는 응답 헤더 정책이 연결된 캐시 동작과 일치하는 모든 요청에 대한 HTTP 응답에 Server-Timing 헤더를 추가합니다. 이 값을 50으로 설정하면 CloudFront가 캐시 동작과 일치하는 요청에 대한 응답의 50%에 헤더를 추가합니다. 샘플링 속도는 소수점 이하 4자리까지 0~100의 숫자로 설정할 수 있습니다.

샘플링 속도가 100보다 낮은 숫자로 설정되면 CloudFront가 Server-Timing 헤더를 추가하는 응답을 제어할 수 없고 비율만 제어할 수 있습니다. 그러나 HTTP 요청에서 값이 server-timing으로 설정된 Pragma 헤더를 추가하여 해당 요청에 대한 응답에서 Server-Timing 헤더를 수신할 수 있습니다. 이는 샘플링 속도가 무엇으로 설정되어 있든 상관없이 작동합니다. 샘플링 속도가 0으로 설정된 경우에도 요청에 Pragma: server-timing 헤더가 포함된 경우 CloudFront는 Server-Timing 헤더를 응답에 추가합니다.

원본에서 수신한 Server-Timing 헤더

캐시 누락이 있고 CloudFront가 요청을 원본에 전달할 때 원본은 CloudFront에 대한 응답에 Server-Timing 헤더를 포함할 수 있습니다. 이 경우 CloudFront는 원본에서 수신한 Server-Timing 헤더에 지표를 추가합니다. CloudFront가 뷰어에게 보내는 응답은 원본에서 온 값과 CloudFront가 추가한 지표를 포함하는 하나의 Server-Timing 헤더를 포함합니다. 원본에서 수신한 헤더 값은 끝에 있거나 CloudFront가 헤더에 추가하는 두 지표 세트 사이에 있을 수 있습니다.

캐시 적중이 있는 경우 CloudFront가 뷰어에게 보내는 응답은 헤더 값에 CloudFront 지표만 포함하는 하나의 Server-Timing 헤더를 포함합니다(원본에서 수신한 값은 포함되지 않음).

Server-Timing 헤더 지표

CloudFront가 HTTP 응답에 Server-Timing 헤더를 추가할 때 헤더 값에는 CloudFront 및 원본의 동작 및 성능에 대한 인사이트를 제공하는 하나 이상의 지표가 포함됩니다. 다음 목록에는 모든 지표와 해당 잠재적 값이 나와 있습니다. Server-Timing 헤더에는 CloudFront를 통한 요청 및 응답의 특성에 따라 이러한 지표 중 일부만 포함됩니다.

이러한 지표 중 일부는 이름만 있는(값은 없음) Server-Timing 헤더에 포함됩니다. 나머지에는 이름과 값이 있습니다. 지표에 값이 있으면 이름과 값이 세미콜론(;)으로 구분됩니다. 헤더에 둘 이상의 지표가 포함된 경우 지표는 쉼표(,)로 구분됩니다.

cdn-cache-hit

CloudFront가 원본에 요청하지 않고 캐시에서 응답을 제공했습니다.

cdn-cache-refresh

CloudFront가 캐시된 객체가 여전히 유효한지 확인하기 위해 원본에 요청을 보낸 후 캐시에서 응답을 제공했습니다. 이 경우 CloudFront는 원본에서 전체 객체를 검색하지 않았습니다.

cdn-cache-miss

CloudFront가 캐시에서 응답을 제공하지 않았습니다. 이 경우 CloudFront는 응답을 반환하기 전에 원본에서 전체 객체를 요청했습니다.

cdn-pop

요청을 처리한 CloudFront 접속 지점(POP)을 설명하는 값이 포함되어 있습니다.

cdn-rid

요청에 대한 CloudFront 고유 식별자가 있는 값이 포함되어 있습니다. AWS Support를 통해 문제를 해결할 때 이 요청 식별자(RID)를 사용할 수 있습니다.

cdn-hit-layer

CloudFront가 원본에 요청하지 않고 캐시에서 응답을 제공하는 경우 이 지표가 표시됩니다. 다음 값 중 하나를 포함합니다.

  • EDGE – CloudFront가 POP 위치에서 캐시된 응답을 제공했습니다.

  • REC - CloudFront가 리전 엣지 캐시(REC) 위치에서 캐시된 응답을 제공했습니다.

  • Origin Shield – CloudFront가 Origin Shield 역할을 하는 REC에서 캐시된 응답을 제공했습니다.

cdn-upstream-layer

CloudFront가 원본에서 전체 객체를 요청하는 경우 이 지표가 표시되며 이 지표에는 다음 값 중 하나가 포함됩니다.

  • EDGE – POP 위치에서 요청을 원본으로 직접 보냈습니다.

  • REC – REC 위치에서 요청을 원본으로 직접 보냈습니다.

  • Origin ShieldOrigin Shield 역할을 하는 REC가 요청을 원본으로 직접 보냈습니다.

cdn-upstream-dns

원본에 대한 DNS 레코드를 검색하는 데 소요된 시간(밀리초) 값이 포함됩니다. 값이 0이면 CloudFront에서 캐시된 DNS 결과를 사용했거나 기존 연결을 재사용했음을 나타냅니다.

cdn-upstream-connect

원본 DNS 요청이 완료된 시점과 원본에 대한 TCP(및 해당하는 경우 TLS) 연결이 완료된 시점 사이의 시간(밀리초) 값이 포함됩니다. 값이 0이면 CloudFront에서 기존 연결을 재사용했음을 나타냅니다.

cdn-upstream-fbl

원본 HTTP 요청이 완료된 시점과 원본의 응답에서 첫 번째 바이트가 수신된 시점(첫 번째 바이트 대기 시간) 사이의 밀리초 값이 포함됩니다.

cdn-downstream-fbl

엣지 로케이션에서 요청 수신이 완료된 시점과 사용자에게 응답의 첫 번째 바이트가 전송된 시점 사이의 밀리초 값이 포함됩니다.

Server-Timing 헤더 예시

다음은 Server-Timing 헤더 설정이 사용 설정된 경우 뷰어가 CloudFront에서 수신할 수 있는 Server-Timing 헤더의 예입니다.

예 - 캐시 누락

다음 예제는 요청된 객체가 CloudFront 캐시에 없을 때 뷰어가 수신할 수 있는 Server-Timing 헤더를 보여줍니다.

Server-Timing: cdn-upstream-layer;desc="EDGE",cdn-upstream-dns;dur=0,cdn-upstream-connect;dur=114,cdn-upstream-fbl;dur=177,cdn-cache-miss,cdn-pop;desc="PHX50-C2",cdn-rid;desc="yNPsyYn7skvTzwWkq3Wcc8Nj_foxUjQUe9H1ifslzWhb0w7aLbFvGg==",cdn-downstream-fbl;dur=436

Server-Timing 헤더는 다음을 나타냅니다.

  • 원본 요청이 CloudFront 접속 지점 (POP) 위치(cdn-upstream-layer;desc="EDGE")에서 전송되었습니다.

  • CloudFront가 원본에 대해 캐시된 DNS 결과를 사용했습니다(cdn-upstream-dns;dur=0).

  • CloudFront가 원본에 대한 TCP(및 해당하는 경우 TLS) 연결을 완료하는 데 114밀리초가 소요되었습니다(cdn-upstream-connect;dur=114).

  • 요청을 완료한 후 CloudFront가 원본에서 응답의 첫 번째 바이트를 수신하는 데 177밀리초가 소요되었습니다(cdn-upstream-fbl;dur=177).

  • 요청된 객체가 CloudFront의 캐시에 없었습니다(cdn-cache-miss).

  • 요청이 코드 PHX50-C2(cdn-pop;desc="PHX50-C2")로 식별된 엣지 로케이션에서 수신되었습니다.

  • 이 요청에 대한 CloudFront 고유 ID는 yNPsyYn7skvTzwWkq3Wcc8Nj_foxUjQUe9H1ifslzWhb0w7aLbFvGg==(cdn-rid;desc="yNPsyYn7skvTzwWkq3Wcc8Nj_foxUjQUe9H1ifslzWhb0w7aLbFvGg==")이었습니다.

  • 최종 뷰어 요청을 받은 후 CloudFront가 뷰어에게 응답의 첫 번째 바이트를 보내는 데 436밀리초가 소요되었습니다(cdn-downstream-fbl;dur=436).

예 - 캐시 적중률

다음 예제는 요청된 객체가 CloudFront 캐시에 있을 때 뷰어가 수신할 수 있는 Server-Timing 헤더를 보여줍니다.

Server-Timing: cdn-cache-hit,cdn-pop;desc="SEA19-C1",cdn-rid;desc="nQBz4aJU2kP9iC3KHEq7vFxfMozu-VYBwGzkW9diOpeVc7xsrLKj-g==",cdn-hit-layer;desc="REC",cdn-downstream-fbl;dur=137

Server-Timing 헤더는 다음을 나타냅니다.

  • 요청된 객체가 캐시에 있었습니다(cdn-cache-hit).

  • 요청이 코드 SEA19-C1(cdn-pop;desc="SEA19-C1")로 식별된 엣지 로케이션에서 수신되었습니다.

  • 이 요청에 대한 CloudFront 고유 ID는 nQBz4aJU2kP9iC3KHEq7vFxfMozu-VYBwGzkW9diOpeVc7xsrLKj-g==(cdn-rid;desc="nQBz4aJU2kP9iC3KHEq7vFxfMozu-VYBwGzkW9diOpeVc7xsrLKj-g==")이었습니다.

  • 요청된 객체가 리전 엣지 캐시(REC) 위치에 캐시되었습니다(cdn-hit-layer;desc="REC").

  • 최종 뷰어 요청을 받은 후 CloudFront가 뷰어에게 응답의 첫 번째 바이트를 보내는 데 137밀리초가 소요되었습니다(cdn-downstream-fbl;dur=137).