Tech/Sofeware Development

AWS EC2와 가비아 도메인 연결하기 [2/2] (with React)

행복한 시지프 2022. 6. 25. 02:58

React로 만든 웹 사이트를 AWS EC2로 배포하고, 가비아에서 구매한 도메인과 연결하는 방법을 다룹니다.

 

목차

1. port 없애기 (3000 -> 80)

2. AWS Route53 호스팅

3. 가비아에서 Name Server 연결

 



1. port 없애기 (3000 -> 80)

현재 인스턴스로 build 했다면 publicIp:3000 이 배포 url일 것입니다.

하지만, Route 대상으로 :3000 같은 port 번호를 쓸 수 없습니다.

그러므로, react app start 를 할 때 80번 또는  443번 port로 build 되게끔 해야 합니다.

80번은 http 기본 port이고

443번은 https 기본 port입니다.

 

즉, 어떤 http domain에 :80을 붙여서 접근하든, 떼서 접근하든 동일하게 접근된다는 것이고,

https domain에 :443을 붙이든 떼든 동일하게 접근가능하다는 것입니다.

 

아래 명령어를 사용하면, port를 80으로 바꾸어 build 가능합니다.

sudo serve -l 80 -s build

이때 문제가 있다면, 보안 그룹에서 80을 추가해줍니다.

 

 

2. AWS Route53 호스팅

이는 매우 쉽습니다.

Route53에 들어갑니다.

호스팅 영역을 생성합니다.

 

도메인을 쓰고, 호스팅하면 바로 호스팅됩니다.

그리고 레코드 생성을 눌러, public ip를 입력합니다.

 

그러면 레코드가 생성되었고,

Name Server 주소를 확인할 수 있습니다.

3. 가비아에서 Name Server 연결

가비아에서 구매한 domain 관리 로 접근합니다.

아래 네임서버 입력란이 있는데, 위 레코드의 주소 4개를 모두 넣어줍니다.

 

그러면, 가비아에서 구매한 도메인과 Route53에서 호스팅한 public ip가 연결되어 원하는 도메인으로 접근 가능합니다.