커스텀 도메인 연결

Firebase App Hosting에 배포된 앱의 경우 브랜드 중심의 고유한 도메인 이름을 포기할 필요가 없습니다. Firebase에서 생성된 도메인이 아닌 커스텀 도메인 (예: example.com 또는 app.example.com)을 Firebase 호스팅 사이트에 사용할 수 있습니다. Firebase App Hosting은 각 도메인의 SSL 인증서를 프로비저닝합니다.

이 문서의 나머지 부분에 나와 있는 단계별 안내에 따라 커스텀 도메인을 연결할 수 있습니다.

App Hosting용 도메인 설정

Firebase 프로젝트에 Firebase App Hosting 사이트가 있도록 기본 App Hosting 설정 작업을 완료했는지 확인합니다.

1단계: 커스텀 도메인 추가

  1. 프로젝트의 App Hosting 페이지를 엽니다.
  2. 대시보드 보기 옵션을 사용하여 App Hosting 백엔드를 선택합니다.
  3. 설정 탭을 선택한 다음 맞춤 도메인 추가를 클릭합니다.
  4. App Hosting 사이트에 연결할 커스텀 도메인 이름을 입력합니다.
  5. (선택사항) 커스텀 도메인의 모든 요청을 지정된 두 번째 도메인으로 리디렉션하려면 체크박스를 선택합니다 (example.comwww.example.com을 동일한 콘텐츠로 리디렉션).
  6. 계속을 클릭하여 DNS 레코드를 구성하고 커스텀 도메인 설정을 완료합니다.

2단계: 커스텀 도메인 설정

  1. Firebase Console의 커스텀 도메인 추가 마법사는 페이지를 Firebase App Hosting에 연결하기 위해 업데이트해야 하는 필수 레코드를 보여줍니다. 다음 입력을 사용해서 DNS 제공업체에서 사용자 도메인으로부터 레코드를 추가, 삭제, 저장합니다.

    • 유형: 제공된 DNS 레코드를 추가합니다.
    • 호스트: 레코드에 커스텀 도메인 키를 입력합니다. 입력한 호스트는 콘텐츠를 제공할 도메인이며 이 도메인은 최상위 도메인 또는 하위 도메인일 수 있습니다. 도메인 제공업체에 따라 이 용어를 '호스트 이름', '이름' 또는 '도메인'으로 표시할 수도 있습니다.

    • : 제공된 값을 레코드에 할당합니다. 도메인 제공업체에 따라 이 용어를 '데이터', '지정 대상', '콘텐츠', '주소', 'IP 주소'로 표시할 수도 있습니다. 값 필드의 콘텐츠는 레코드 유형에 따라 다릅니다. A 및 AAAA 레코드의 값은 IP 주소이고 TXT 레코드는 문자열입니다.

SSL 인증서가 프로비저닝되기를 기다립니다. 이 과정은 일반적으로 몇 시간이 걸리지만 DNS를 Firebase App Hosting에 연결한 후 최대 24시간이 걸릴 수도 있습니다. 대부분의 경우 레코드 전파와 SSL 인증서 프로비저닝은 도메인 제공업체에 따라 1시간 이내에 이루어집니다.

SSL 인증서 프로비저닝 대기

DNS 레코드를 업데이트한 후 App Hosting에서 도메인의 SSL 인증서를 프로비저닝하는 데 최대 몇 시간이 걸릴 수 있습니다. DNS를 Firebase App Hosting에 연결한 후 최대 24시간이 걸릴 수도 있습니다.

브라우저의 보안 도구를 사용하면 이 인증서를 볼 수 있습니다. 도메인이 프로비저닝되는 동안 잘못된 인증서가 표시되거나 도메인에 연결하는 데 문제가 있을 수 있습니다. 이는 정상적인 절차 중 한 부분이며 도메인 인증서를 사용할 수 있게 되면 해결됩니다.

참고: Firebase App Hosting은 필요에 따라 커스텀 도메인에 SSL 인증서를 자동으로 다시 프로비저닝합니다.

DNS 레코드 유형

App Hosting 커스텀 도메인 마법사에서 도메인의 현재 구성에 따라 1~5개의 DNS 레코드를 추가하라는 메시지가 표시될 수 있습니다. 레코드의 유형에 따라 함수가 결정됩니다. App Hosting에서 요청할 수 있는 레코드 유형은 다음과 같습니다.

유형 설명 독점
A 이러한 레코드에는 브라우저에 도메인에 연결하려고 할 때 사용할 주소를 알려주는 IPv4 값 (예: 8.8.8.8)이 포함됩니다.
AAAA 이러한 레코드에는 A 레코드와 거의 동일한 기능을 하는 다른 유형의 주소 레코드인 IPv6 값 (예: 2001:4860:4860::8888)이 포함됩니다. App Hosting는 현재 AAAA 레코드를 사용하지 않지만, 도메인에 기존 레코드가 있는 경우 이를 삭제하라는 메시지가 표시됩니다.
CNAME 이러한 레코드에는 DNS 쿼리를 확인하는 데 현재 도메인 대신 사용해야 하는 별도의 도메인 이름이 포함되어 있습니다. CNAME 레코드는 하위 도메인 (예: www.example.com)에서만 허용됩니다. App Hosting는 다음 두 가지 이유로 CNAME 레코드를 사용합니다.
  • 간편한 온보딩: 가능한 경우 App Hosting_custom-domain...로 시작하는 사전 구성된 도메인으로 CNAME을 요청합니다.
  • SSL 인증서 확인: App Hosting는 Cloud Certificate Manager를 사용하여 커스텀 도메인의 SSL 인증서를 프로비저닝합니다. _acme-challenge... 하위 도메인의 CNAME 레코드를 사용하면 인증서 관리자가 인증서를 생성하고 갱신할 수 있습니다. 온보딩 후에는 이 레코드를 삭제해서는 안 됩니다. 그러지 않으면 인증서 적용 범위가 소멸됩니다.
TXT 이러한 레코드를 사용하면 임의의 메타데이터를 도메인에 연결할 수 있습니다. App Hosting를 사용하면 특정 형식의 TXT 레코드인 fah-claim=[UUID]를 사용하여 도메인에서 게재해야 하는 맞춤 도메인을 지정할 수 있습니다. 아니요
CAA 이 레코드는 도메인의 SSL 인증서를 민팅할 권한이 있는 인증 기관을 지정하기 위한 허용 목록으로 작동합니다. App Hosting는 도메인의 인증서를 민팅하는 것이 차단된 경우에만 CAA 레코드를 요청합니다. 아니요

커스텀 도메인 키

DNS 레코드를 추가하거나 수정할 때 서로 다른 도메인 제공업체의 DNS 관리 사이트 내 호스트 필드에는 서로 다른 입력 값을 입력해야 합니다. 아래에 자주 사용되는 제공업체의 일반적인 입력 값이 정리되어 있습니다. 자세한 안내는 도메인 제공업체의 문서를 참고하세요.

도메인 유형 커스텀 도메인 키
최상위 도메인

일반적인 입력 값은 다음과 같습니다.

  • @
  • 최상위 도메인 이름(예: example.com)
  • 호스트 필드 비우기
하위 도메인

일반적인 입력 값은 다음과 같습니다.

  • 전체 하위 도메인 이름(예: app.example.com)
  • 하위 도메인 부분만(예: .example.com을 제외한 app)

일반적인 도메인 제공업체

다음은 몇 가지 일반적인 도메인 제공업체 및 각 제공업체에 필요한 입력 유형입니다. 이 정보는 최대한 최신 상태로 유지되지만 자세한 안내는 도메인 제공업체의 문서를 참고하세요.

커스텀 도메인의 상태 설명

상태 설명
설정 필요

DNS 레코드를 사용하여 구성을 변경해야 할 수 있습니다.

  • 대부분의 경우 DNS A 레코드는 도메인 이름 제공업체에서 Firebase App Hosting 서버로 전파되지 않습니다.
    문제 해결 팁: 24시간이 지났다면 레코드가 Firebase App Hosting을 가리키도록 설정되었는지 확인하세요.

  • 드물지만 DNS 레코드에 다른 호스팅 제공업체를 가리키는 A 레코드 또는 CNAME 레코드가 있어 SSL 챌린지가 실패할 수 있습니다.
    문제 해결 팁: A 레코드가 Firebase App Hosting만 가리키는지 확인하고 CNAME 레코드를 모두 삭제하세요.

대기 중

커스텀 도메인을 올바르게 설정했지만 Firebase App Hosting이 SSL 인증서를 프로비저닝하지 않았습니다.

경우에 따라 지나치게 제한적인 CAA 레코드로 인해 커스텀 도메인의 SSL 인증서 발급이 지연될 수 있습니다. 인증 기관인 'letsencrypt.org' 및 'pki.goog'가 도메인에 SSL 인증서를 만들 수 있도록 설정되어 있는지 확인하세요.

인증서 민팅

SSL 인증서가 도메인에 대해 생성됩니다.

연결됨

커스텀 도메인에 올바른 DNS 레코드와 SSL 인증서가 있습니다.
사이트 콘텐츠를 제공할 수 있습니다.