개요
국내 도메인 판매 업체인 가비아에서 커스텀 도메인을 구매했습니다. vercel 에 배포한 도메인에도 커스텀 도메인을 적용하려고 합니다. 가비아와 vercel 이 자동화를 잘 해두었기 때문에, 적용 자체는 어렵지 않지만 적용하며 만났던 생소한 용어들을 정리해야겠다고 생각했습니다.
도메인 활용
저는
metistech.me
라는 도메인을 구매했습니다. 그리고 이 도메인과 기존 vercel 에서 제공해준 무료 도메인인 example.vercel.app
에 매핑 해주도록 하였습니다. 제가 배포한 플랫폼인 vercel 은 배포물의 IP 를 제공하지 않기 때문에 직접 IP 를 매핑하지는 못 했습니다. 이런 구조로 동작한다고 생각하고 설정하였습니다. DNS 레코드
DNS 는 IP 주소를 사람이 인식하기 쉽게 하기 위해 IP 를 어떠한 인식하기 좋은 문자열로 변경해주는 것을 위한 시스템을 가진 서버입니다. 레코드란 DNS 에서 요청하는 도메인의 타겟이 되는 정보입니다. 하나의 도메인은 하나의 타겟 레코드를 가지는데, 타겟 레코드가 가리키는 정보는 여러가지가 있고, 이를 구분할 필요가 있습니다.
- A 레코드: 도메인을 IPv4 주소로 매핑 합니다. DNS 의 주목적이죠.
도메인 명 | 호스트 | 레코드 유형 | 값 | TTL |
example.com | www | A | 192.0.2.1 | 14400 |
호스트 속성은 다른 특정 도메인이나 서브 도메인을 지정할 수도 있습니다. 호스트는 지정된 도메인에 대한 서브 도메인을 지정하는 것입니다. 루트 도메인에 대한 레코드임을 나타냅니다. (단순히
example.com
도메인) TTL 은 Time to Live 이며, A 레코드에서는 14400 초가 디폴트 값입니다. 이는 DNS 에서 해당 레코드의 정보가 업데이트 되면 실제 반영되는데, 240분(14400초) 이 걸린다는 뜻입니다.- CNAME 레코드: 도메인을 다른 도메인으로 매핑합니다. 저의 경우입니다.
도메인 명 | 호스트 | 레코드 유형 | 값 | TTL |
blog.example.com | @ | CNAME | example.com | 32600 |
예시는
blog.example.com
의 값을 example.com
로 매핑 하는 예제입니다. 호스트의 경우 @ 기호는 DNS 의 루트 도메인에 대한 레코드임을 나타냅니다. 이럴때는 blog.example.com
이라는 도메인이 지정 값인 example.com
으로 매핑됩니다. 저의 경우 이 CNAME 설정을 통해 제가 구매한 도메인과 vercel 에서 제공해준 도메인을 매핑 했습니다. 도메인 이름을 지정하거나, 호스트를 지정하는 것의 결과 차이는 똑같지만, 관리의 편의성을 위해 호스트 명을 관리할 수 있도록 여러 도메인 서비스 업체에서 기능을 지원합니다.
- TXT 레코드: 도메인을 임의의 텍스트 정보에 매핑합니다. 제가 아래에 활용 예시를 사용하겠지만, 어떤 도메인의 소유권 인증 등에 활용될 수 있습니다.
이외에도 AAAA(IPv6), MX(메일서버) 등 여러 유형의 레코드들이 있습니다.
도메인 구매 후 가비아 측 설정
가비아에서 도메인을 구매했습니다. 구매 과정은 정말 간단하게 잘 되어있습니다. 제가 할 것은 추가적인 도메인 설정입니다.
가이드를 통해서 내가 가진 도메인의 레코드를 관리할 수 있습니다. 저는 vercel 에서 제공한 도메인 이름을 값으로 지정해야했기 때문에, CNAME 레코드를 추가했습니다.
저는 제 도메인에 다음과 같이 세팅하였습니다. 이렇게 세팅하면, 제가 구매한 도메인이
example.com
이라면 www.example.com
과 blog.example.com
도메인 모두 제가 원했던 도메인으로 매핑 되겠죠.Vercel 측 설정
이제 vercel 쪽에도 도메인을 추가해 주어야 합니다. 배포한 프로젝트에 들어가 settings > Domains 를 들어갑니다. 이후 루트 도메인을 적고 Add 버튼을 누르면 다음과 같이 추천하는 방식을 제공합니다.
그러면
www.example.com
을 추가하고, example.com
은 www.example.com
으로 리다이렉트 하는 방식으로 도메인을 배정해줍니다. 이제는 제가 신청한 도메인이 제가 vercel에 배포한 도메인으로 접속 가능하게 됩니다.도메인을 구매한 이유: Google Search Console 에 편하게 도메인 인증하기
저는 Google Search Console 을 통해 SEO 를 하고자 했습니다. 하지만, vercel 이 제공하는 도메인은 무료이다 보니 도메인 설정을 자유롭게 할 수 없었습니다. Google Search Console 에서는 관리할 도메인을 등록하는 방법이 두가지 있는데, 도메인의 TXT 레코드로 인증 텍스트를 지정하는 방법과 인증하는 파일을 프로젝트에 직접 포함하는 방법입니다.
URL 접두어 방식이 인증 파일을 프로젝트에 직접 포함하는 방법인데, 이 방법으로 사용했을때, GSC 에 색인이 잘 생성되지 않아 도메인 TXT 레코드 방식을 시도해 보았습니다.
도메인 방식에 제가 등록한 도메인을 입력하고 계속을 누르면
다음과 같은 텍스트 레코드 값을 제공하는데 이를 복사해서 다시 DNS 서비스의 DNS 레코드 관리 툴에 들어가 추가 하면 됩니다.
인증 성공 메시지는 캡쳐하지 못했지만 잘 인증되어
제가 구매한 도메인을 GSC 에서 관리할 수 있게 되었습니다.
++vercel 제공 도메인 제거
vercel 에서 제공하는 도메인을 이제는 사용할 필요가 없으니 제거했습니다. 제거하면서 알게된 것은, vercel 이 IP 를 제공한다는 점. 기본 무료 제공 도메인을 제거하면 IP 를 따로 줍니다. 그래서 이를 제거 후 사용하면, 레코드 타겟 값 또한 vercel 에서 제공한다는 점입니다. 그래서 가비아에 있는 도메인 레코드도 다시 수정했습니다. 이제는 구글 검색 엔진에도 제 블로그가 뜨고 아주 좋네요!