Amazon Web Services(AWS) CloudFront 설정
다음 스크린샷은 AEM 원본의 콘텐츠를 전달하도록 AWS CloudFront을(를) 구성하는 방법을 보여 줍니다. 필수 설정은 빨간색 원으로 표시됩니다.
# CloudFront 배포 만들기
# 원본 구성
원본 도메인으로 main--sitename--orgname.aem.live
을(를) 사용합니다.
다음 사용자 지정 헤더를 추가합니다.
X-Forwarded-Host
: 도메인 이름X-BYO-CDN-Type
:cloudfront
프로젝트에 대해 푸시 무효화를 구성했으면 다음 사용자 지정 헤더도 추가해야 합니다.
X-Push-Invalidation
:enabled
# 캐시 동작
기본 설정을 여기에 보관하십시오.
캐시 키 및 원본 요청
"캐시 정책 만들기" 클릭
캐시 정책 만들기
기본 TTL 을(를) 300
초로 설정합니다.
"캐시 키 설정"에서 기본값을 유지합니다.
- 헤더: 없음
- 쿠키: 없음
- 압축 지원: gzip, brotli
다음을 재정의합니다.
-
쿼리 문자열: 다음 쿼리 문자열을 포함합니다
width
height
format
optimize
limit
offset
sheet
브라우저 탭을 닫고 이전 화면으로 돌아갑니다. 이 화면에서 "원본 요청 정책 만들기"를 클릭합니다.
원본 요청 정책 만들기
기본 설정 유지:
- 헤더: 없음
- 쿠키: 없음
다음을 재정의합니다.
-
쿼리 문자열: 다음 쿼리 문자열을 포함합니다
width
height
format
optimize
limit
offset
sheet
그런 다음 만들기 를 클릭하고 탭을 닫아 이전 화면으로 돌아갑니다.
캐시 정책 및 원본 요청 정책 적용
배포 속성으로 돌아간 후 캐시 정책 및 원본 요청 정책 드롭다운 옆에 있는 다시 로드 단추를 클릭하여 새로 만든 두 개의 정책이 표시되도록 합니다. 그런 다음 캐시 정책과 원본 요청 정책 모두에 대한 새 정책을 선택합니다.
배포 만들기
웹 응용 프로그램 방화벽(WAF)을 사용할지 여부를 선택합니다. AEM 오리진에 WAF이 필요하지 않으며 AEM 오리진에 WAF 사용이 필요하지도 권장되지도 않습니다.
페이지 끝으로 스크롤하여 "배포 만들기"를 클릭합니다. 나중에 구성으로 돌아가야 하므로 배포의 ID를 기억하십시오.
# Age 및 X-Robots-Tag 헤더를 제거하는 함수 만들기
Cloudfront 사이드바에서 "기능"을 선택하고 "기능 만들기"를 클릭합니다.
함수 이름(예: stripHeaders
)과 선택적 설명을 입력하고 "함수 만들기"를 클릭합니다.
함수의 코드를 다음 코드 조각으로 바꾸고 "변경 내용 저장"을 클릭합니다.
function handler(event) {
const response = event.response;
const request = event.request;
const headers = response.headers;
// Strip age header
delete headers['age'];
// Check if the request URL does not end with '.plain.html'
if (!request.uri.endsWith('.plain.html')) {
delete headers['x-robots-tag'];
}
return response;
}
"Publish" 탭을 선택하고 "Publish 기능"을 클릭합니다.
마지막으로 아래로 스크롤하여 함수를 분배와 연관시키고 "연관 추가"를 클릭합니다.
다음 대화 상자에서 다음을 선택합니다.
- 배포: 새 배포의 ID
- 이벤트 유형: 뷰어 응답
- 캐시 동작: 기본값
마지막으로 "연결 추가"를 클릭합니다.
그게 전부입니다(많거나 적음). 스테이지 환경에서 배포를 테스트하십시오.
선택 사항: 원본 요청 인증
토큰 기반 사이트 인증을 사용하도록 설정한 경우 Cloudfront → 배포 → <사용자 배포> → 원본 → <사용자 AEM 원본> → 편집으로 돌아갑니다.
"사용자 지정 헤더 추가"에서 "헤더 추가"를 선택하고 값이 token <your-auth-token>
인 Authorization
헤더를 만듭니다. <your-auth-token>
을(를) 헤더 값으로 토큰 기반 사이트 인증(hlx_
(으)로 시작)을 통해 만든 토큰 값으로 바꿉니다.
이렇게 하면 AWS Cloudfront CDN에서 AEM 오리진으로의 모든 요청이 올바른 인증을 사용하게 됩니다.
AWS Cloudfront에 대한 푸시 무효화 설정
푸시 무효화는 작성자가 콘텐츠 변경 사항을 게시할 때마다 고객의 프로덕션 CDN(예: www.yourdomain.com
)에 있는 콘텐츠를 자동으로 제거합니다.
콘텐츠는 URL 및 캐시 태그/키로 제거됩니다.
푸시 무효화는 프로젝트 구성(Sharepoint의 Excel 통합 문서 이름 .helix/config.xlsx
또는 Google 드라이브의 Google 시트 이름 .helix/config
)에 특정 속성을 추가하여 사용할 수 있습니다.
NB: CloudFront는 캐시 태그/키로 제거를 지원하지 않습니다. 캐시 태그/키로 지우기는 항상 모두 지우기를 트리거합니다.
구성 속성:
AWS 자격 증명을 만들려면:
AWS 콘솔에서 IAM 대시보드를 연 다음 정책 → 정책 생성을 선택합니다.
다음 화면에서 서비스로 "CloudFront"를 선택하고 작업으로 "CreateInvalidation"을 선택한 다음 "ARN 추가"를 클릭하여 권한을 단일 배포로 제한합니다.
배포 ID를 입력하고 "ARN 추가"를 클릭합니다.
"다음: 태그"로 이동한 다음 "다음: 검토"로 진행합니다.
새 정책의 이름(예: "AEM<YourSite>Invalidate")을 입력하고 "정책 만들기"를 클릭합니다.
IAM 대시보드에서 사용자 → 사용자 만들기 를 선택합니다
사용자 이름(예: "Invalidator")을 입력하고 다음 을 클릭합니다.
"권한 설정" 창에서 "직접 정책 첨부"를 선택하고 새로 만든 정책을 선택합니다(이 예제에서는 "AEM<YourSite>Invalidate").
다음 단계로 이동하여 "사용자 만들기" 끝을 클릭한 다음 "사용자 보기"를 클릭합니다.
"보안 자격 증명" 탭을 선택하고 "액세스 키 만들기"를 클릭합니다.
"타사 서비스"를 선택하고 확인란을 클릭한 후 "다음"으로 진행합니다.
마지막으로 액세스 키 ID 및 보안 액세스 키 값을 복사합니다.
이 도구를 사용하여 자격 증명의 유효성을 검사할 수 있습니다.