사용자 지정 도메인 문제 해결
사용자 지정 도메인을 Amplify 애플리케이션에 연결할 때 문제가 발생하는 경우, 이 섹션의 항목을 참조하여 도움을 받으세요.
여기에서 문제 해결 방법을 찾을 수 없다면 지원에 문의하세요. 자세한 내용을 알아보려면 AWS Support 사용 설명서의 지원 사례 만들기를 참조하세요.
주제
CNAME이 확인되는지 검증해야 합니다.
-
타사 도메인 공급자와 함께 DNS 레코드를 업데이트한 후에는 dig
와 같은 도구나 https://www.whatsmydns.net/ 과 같은 무료 웹사이트를 사용하여 CNAME 레코드가 제대로 해결되고 있는지 확인할 수 있습니다. 다음 스크린샷은 whatsmydns.net을 사용하여 www.example.com 도메인의 CNAME 레코드를 확인하는 방법을 보여줍니다.
-
검색을 선택하면 whatsmydns.net에 CNAME에 대한 결과가 표시됩니다. 다음 스크린샷은 CNAME이 cloudfront.net URL로 올바르게 확인되는지 확인하는 결과 목록의 예입니다.
타사에서 호스팅하는 도메인이 확인 보류 상태로 고착된 경우,
-
사용자 지정 도메인이 확인 보류 중 상태에서 멈춘 경우, CNAME 레코드가 해결되고 있는지 확인하세요. 이 작업을 수행하는 방법에 대한 지침은 이전 문제 해결 항목인 CNAME 문제가 해결되었는지 확인하는 방법을 참조하세요.
-
CNAME 레코드가 확인되지 않는 경우, 도메인 공급자의 DNS 설정에 해당 CNAME 항목이 있는지 확인하세요.
중요
사용자 지정 도메인을 생성하는 즉시 CNAME 레코드를 업데이트하는 것이 중요합니다. 앱이 Amplify 콘솔에 생성되면 몇 분마다 CNAME 레코드의 리졸빙 여부를 확인해야 합니다. 1시간 후에 리졸빙이 되지 않는 경우, 몇 시간마다 확인을 해야 하므로 도메인의 사용 준비 완료에 지연이 초래될 수 있습니다. 앱을 만든 후 몇 시간 후에 CNAME 레코드를 추가하거나 업데이트한 경우, 이로 인해 앱이 확인 보류 중 상태에서 멈출 가능성이 높습니다.
-
CNAME 레코드가 존재하는지 확인한 경우, DNS 공급자에 문제가 있을 수 있습니다. DNS 공급자에게 연락하여 DNS 확인 CNAME 리졸빙이 되지 않는 이유를 진단하거나 DNS를 Route 53로 마이그레이션할 수 있습니다. 자세한 내용은 Amazon Route 53을 기존 도메인의 DNS 서비스로 지정 섹션을 참조하세요.
Amazon Route 53으로 호스팅된 도메인이 확인 보류 상태로 고착된 경우,
도메인을 Amazon Route 53으로 이전한 경우, 도메인은 앱 생성 시 Amplify에서 발급한 것과 다른 이름 서버를 가질 수 있습니다. 오류의 원인을 진단하려면 다음 단계를 수행하세요.
-
Amazon Route 53 콘솔
에 로그인합니다. -
탐색 창에서 호스팅 영역을 선택한 다음 연결 중인 도메인의 이름을 선택합니다.
-
호스팅 영역 세부 정보 섹션에서 이름 서버 값을 기록합니다. 다음 단계를 완료하려면 이 값이 모두 필요합니다. Route 53 콘솔의 다음 스크린샷은 오른쪽 하단에 이름 서버 값의 위치를 표시합니다.
-
탐색 창에서 등록된 도메인을 선택합니다. 등록된 도메인 섹션에 표시된 이름 서버가 호스팅 영역 세부 정보 섹션의 이전 단계에서 기록한 이름 서버 값과 일치하는지 확인하세요. 일치하지 않는 경우, 이름 서버 값을 호스팅 영역의 값과 일치하도록 편집하세요. Route 53 콘솔의 다음 스크린샷은 오른쪽에 이름 서버 값의 위치를 표시합니다.
-
이렇게 해도 문제가 해결되지 않으면 지원에 문의하세요. 자세한 내용을 알아보려면 AWS Support 사용 설명서의 지원 사례 만들기를 참조하세요.
여러 단계의 하위 도메인을 사용하는 앱이 확인 보류 중 상태에서 멈춰 있음
타사 DNS 공급자에 도메인을 연결할 때, 여러 단계의 하위 도메인을 사용하는 앱이 확인 보류 중 상태에서 멈춰 있는 경우, DNS 레코드 형식에 문제가 있을 수 있습니다. 일부 DNS 공급자는 레코드에 2단계 도메인(SLD)과 최상위 도메인(TLD) 접미사를 자동으로 추가합니다. 이때, 사용자가 SLD와 TLD를 포함한 전체 도메인 형식을 직접 명시하면 도메인 확인 문제로 이어질 수 있습니다.
도메인을 연결할 때는 먼저 Amplify에서 제공하는 전체 형식(예: _hash.docs.backend.example.com)으로 도메인 이름을 지정해 보세요. 만약 SSL 구성이 확인 보류 중 상태에서 멈춰 있다면, 레코드에서 SLD와 TLD를 제거해 보세요. 예를 들어 전체 형식이 _hash.docs.backend.example.com이라면, _hash.docs.backend와 같이 지정합니다. 레코드가 전파될 수 있도록 15~30분 정도 기다립니다. 그런 다음 MX Toolbox 같은 도구를 사용하여 확인 프로세스가 정상적으로 진행되는지 확인합니다.
내 DNS 공급자가 정규화된 도메인 이름을 사용하는 A 레코드를 지원하지 않음
일부 DNS 공급자는 example.cloudfront.net과 같은 정규화된 도메인 이름(FQDN)을 A 레코드에 사용하도록 지원하지 않습니다. 예를 들어, Cloudflare의 A records는 IPv4 주소만 입력할 수 있으며 FQDNs을 지원하지 않습니다. 이 제한을 우회하려면 DNS 구성에서 A records 대신 CNAME 레코드를 사용하는 것이 좋습니다.
예를 들어, 아래는 A record를 사용하는 기존 DNS 구성입니다.
A | @ | ***.cloudfront.net CNAME | www | ***.cloudfront.net
이 CNAME 구성을 아래와 같이 DNS 레코드만 사용하도록 변경할 수 있습니다.
CNAME | @ | ***.cloudfront.net CNAME | www | ***.cloudfront.net
이 방법을 사용하면, Cloudflare 시스템의 A records IPv4 전용 제한을 피하면서도 apex 도메인(@ 레코드)을 CloudFront 같은 서비스에 올바르게 연결할 수 있습니다.
CNAMEAlreadyExistsException 오류
CNAMEAlreadyExistsException 오류가 발생하는 경우, 연결하려는 호스트 이름 중 하나(하위 도메인이거나 정점 도메인)가 다른 Amazon CloudFront에 이미 배포되었음을 의미합니다. 오류의 원인은 현재 사용 중인 호스팅 및 DNS 공급자에 따라 달라질 수 있습니다.
CNAME 또는 example.com과 같은 sub.example.com 별칭은 한 번에 단 하나의 CloudFront 배포에만 연결할 수 있습니다. CNAMEAlreadyExistsException은 해당 도메인이 이미 다른 CloudFront 배포와 연결되어 있음을 나타내며, 이는 같은 AWS 계정 계정 내에 있을 수도 있고, 다른 계정에 있을 수도 있습니다. 새롭게 Amplify Hosting에서 생성된 CloudFront 배포가 정상적으로 동작하려면, 도메인을 기존 CloudFront 배포에서 먼저 연결 해제해야 합니다. 만약 본인 또는 조직이 여러 개의 AWS 계정 계정을 보유하고 있다면, 여러 계정을 확인해야 할 수도 있습니다.
CNAMEAlreadyExistsException 오류의 원인을 진단하려면 다음 단계를 수행하세요.
-
Amazon CloudFront 콘솔
에 로그인하여 이 도메인을 다른 배포에 배포하지 않았는지 확인합니다. 한 번에 CNAME 레코드 하나만 CloudFront 배포에 연결할 수 있습니다. -
이전에 CloudFront 배포에 도메인을 배포한 경우, 해당 도메인을 제거해야 합니다.
-
왼쪽 탐색 창에서 배포를 선택합니다.
-
편집할 배포판 이름을 선택합니다.
-
일반 탭을 선택합니다. 설정 섹션에서 편집을 선택합니다.
-
대체 도메인 이름(CNAME)에서 도메인 이름을 제거합니다. 그런 다음 변경 사항 저장을 선택합니다.
-
-
현재 AWS 계정 계정 또는 다른 AWS 계정 계정에서 이 도메인을 사용하는 다른 CloudFront 배포가 없는지 확인합니다. 현재 실행 중인 서비스에 지장이 없다면, 호스팅 영역을 삭제 후 다시 생성해 보는 것도 방법입니다.
-
이 도메인이 사용자가 소유하는 다른 Amplify 앱에 연결되어 있는지 확인합니다. 그렇다면 호스트 이름 중 하나를 재사용하려고 하지 마세요.
www.example.com을 다른 앱에서 사용 중이라면, 현재 연결하려는 앱에서www.example.com을 사용할 수 없습니다. 대신blog.example.com과 같은 다른 하위 도메인을 사용할 수 있습니다. -
이 도메인이 다른 앱에 성공적으로 연결되었다가 최근 1시간 내에 삭제된 경우, 최소 1시간이 지난 후에 다시 시도합니다. 6시간이 지나도 이 예외가 표시되면 지원에 문의하세요. 자세한 내용을 알아보려면 AWS Support 사용 설명서의 지원 사례 만들기를 참조하세요.
-
도메인을 Route 53을 통해 관리하는 경우, 이전 CloudFront 배포를 가리키는 호스팅 영역의 CNAME 또는 ALIAS 레코드를 모두 정리합니다.
-
위 단계를 완료한 후 Amplify Hosting에서 사용자 지정 도메인을 제거하고, Amplify 콘솔에서 사용자 지정 도메인을 연결하는 워크플로를 처음부터 다시 시작합니다.
추가 확인 필요 오류가 발생합니다.
추가 확인 필요 오류가 발생하는 경우, 이는 AWS Certificate Manager(ACM)에서 이 인증서 요청을 처리하기 위해 추가 정보가 필요함을 의미합니다. 이는 예를 들어 도메인이 Alexa Top 1000 웹 사이트
참고
amazonaws.com, cloudfront.net 또는 elasticbeanstalk.com으로 끝나는 이름과 같이 Amazon 소유 도메인 이름에 대한 인증서를 요청할 수 없습니다.
CloudFront URL에 404 오류가 발생합니다.
트래픽을 처리하기 위해 Amplify 호스팅은 CNAME 레코드를 통해 CloudFront URL을 가리킵니다. 앱을 사용자 지정 도메인에 연결하는 과정에서 Amplify 콘솔은 앱의 CloudFront URL을 표시합니다. 하지만 이 CloudFront URL을 사용하여 애플리케이션에 직접 액세스할 수는 없습니다. 404 오류가 반환됩니다. 애플리케이션은 Amplify 앱 URL(예: https://main.d5udybEXAMPLE.amplifyapp.com)또는 사용자 지정 도메인(예 www.example.com)을 사용해서만 리졸빙됩니다.
Amplify는 요청을 올바른 배포된 브랜치로 라우팅해야 하며 호스트 이름을 사용하여 이 작업을 수행합니다. 예를 들어 앱의 기본라인 브랜치를 가리키는 도메인 www.example.com을 구성할 수 있지만 동일한 앱의 dev 브랜치를 가리키도록 dev.example.com을 구성할 수도 있습니다. 따라서 Amplify가 요청을 적절하게 라우팅할 수 있도록 구성된 하위 도메인을 기반으로 애플리케이션을 방문해야 합니다.
내 도메인을 방문할 때 SSL 인증서 또는 HTTPS 오류가 발생합니다.
타사 DNS 공급자와 함께 CAA(인증 기관 인증) DNS 레코드를 구성한 경우, AWS Certificate Manager(ACM)이 사용자 지정 도메인 SSL 인증서에 대한 중간 인증서를 업데이트하거나 재발급하지 못할 수 있습니다. 이 문제를 해결하려면 Amazon 인증 기관 도메인 중 하나 이상을 신뢰하는 CAA 레코드를 추가해야 합니다. 다음 절차는 수행해야 하는 단계를 설명합니다.
Amazon 인증 기관을 신뢰할 수 있는 CAA 레코드를 추가하려면
-
Amazon 인증 기관 도메인 중 하나 이상을 신뢰하도록 도메인 공급자와 함께 CAA 레코드를 구성하세요. CAA 레코드 구성에 대한 자세한 내용은 AWS Certificate Manager사용 설명서의 CAA(인증 기관 승인) 문제를 참조하세요.
-
다음 방법 중 하나를 사용하여 SSL 인증서를 업데이트합니다.
-
Amplify 콘솔을 사용하여 수동으로 업데이트합니다.
참고
이렇게 하면 사용자 지정 도메인이 다운될 수 있습니다.
-
AWS Management 콘솔에 로그인하고 Amplify 콘솔
을 엽니다. -
CAA 레코드를 추가할 앱을 선택합니다.
-
탐색 창에서 앱 설정, 도메인 관리를 선택합니다.
-
도메인 관리 페이지에서 사용자 지정 도메인을 삭제합니다.
-
앱을 사용자 지정 도메인에 다시 연결합니다. 이 프로세스는 새 SSL 인증서를 발급하며, 이제 ACM에서 해당 중간 인증서를 관리할 수 있습니다.
앱을 사용자 지정 도메인에 다시 연결하려면 사용 중인 도메인 공급자에 해당하는 다음 절차 중 하나를 사용하세요.
-
-
SSL 인증서를 지원 재발급 받으려면 문의하세요.
-
도메인 리디렉션에서 경로 구성 요소가 지원되지 않음
도메인 리디렉션은 호스트 이름 부분만 일치시킵니다. 도메인 기반 소스 규칙에서 경로 구성 요소(예: "https://domain.com/path")는 지원되지 않으며, 오류 없이 해당 규칙이 무시됩니다. 자세한 내용은 리디렉션 및 다시 쓰기 예제 참조 섹션을 참조하세요.