[메모장 프로젝트] 도메인 연결하기 (AWS 4)
1. EC2 생성, 보안 그룹 설정 + 자동화 쉘 스크립트
2. RDS PostgreSQL 생성, EC2 에 Redis 설치
3. GitHub Actions 로 자동 배포
4. 도메인 연결하기
5. Nignx 무중단 배포
도메인 연결하기
Namecheap 도메인 구매
https://www.namecheap.com/domains/registration/
`Namecheap` 에 들어가서 원하는 이름을 검색하여 도메인을 구매해 준다.
(나는 `notepad.today` 를 샀다! 4000원 주고 잘 구매했다.)
이때, 자동 연장만 다 체크 풀어주면 된다.
AWS Elastic IP
도메인을 구매했으면, `AWS` 로 들어가서 `Elastic IP` 를 생성해야 한다.
`Elastic IP` 는 인스턴스가 중지/시작을 하게 되면 퍼블릭 IP 가 변경된다.
그러면 퍼블릭 IP 가 변경될 때마다 일일이 퍼블릭 IP 와 도메인을 연결해주어야 하는데,
`Elastic IP` 는 고정 IP 를 생성해 주기 때문에 처음에 한 번만 `Elastic IP` 와 도메인을 연결하면 된다.
(보통 한 계정당 1개가 무료이다. 또한 해당 `Elastic IP` 를 할당받고, 인스턴스에 연결해서 사용하지 않는다면 비용이 발생할 수도 있다.)
`AWS Console` > `EC2` > `네트워크 및 보안` > `Elastic IP` 으로 들어간다.
그리고 `작업` > `주소 연결` 을 눌러 연결할 인스턴스를 선택하면 된다.
(`Elastic IP` 주소 재연결이란, 이미 다른 인스턴스에 연결되어 있는 경우 해당 옵션을 선택해야 다른 `EC2` 인스턴스로 옮길 수 있다.)
Namecheap DNS 레코드
다시 `Namecheap` 으로 돌아와서 `DNS 레코드를 설정해야 한다.
`Account` > `Domain List` > `Manage` > `Advenced DNS` 로 들어가서,
`A Record` 와 `CNAME Record` 를 생성해야 한다.
`A Record`
- `Host` : `@`
- `Value` : `[Elastic Ip]`
- `TTL` : `30min`
`CNAME Record`
- `Host` : `www`
- `Value` : `[구매한 도메인]`
- `TTL` : `30min`
`A Record` 는 메인 도메인으로 `Elastic IP` 로 연결해 준다. (필수)
`CNAME Record` 는 서브 도메인으로 `www.[도메인]` 로 접속하면 메인 도메인(`@`) 으로 연결해 준다.
이때, `URL Redirect Record` 는 도메인 자체를 다른 URL 로 리다이렉트 할 때 사용하는데,
A 레코드와 충돌할 수 있어 지워주는 것이 좋다.
이제 도메인이 생겨, 접속 URL 도 깔끔해지고 SSL 인증서도 발급받아 `HTTPS` 로 접근할 수 있게 되었다 !!! 😺
(내가 구매한 첫 도메인이다 .... 😁)