0. 도메인 설정하기

앞단계가 다른 기기에서도 잘 되는 것을 확인했다면 완성된 프로젝트의 도메인을 설정하자.


1. 탄적적 IP 등록하기

이미 배포단계에서 탄력적 IP를 등록했다. 인스턴스 중지 후 다시 시작하더라도 변동없는 고유 IP를 위해 탄력적 IP를 생성, 연결해준다.

Spring intializr(Gradle), IntelliJ, AWS EC2를 이용한 포트폴리오 만들기 - 5단계 배포하기(1)


2. 도메인 서비스이용하기

 

2-1. 도메인 구매하기

도메인 구매를 위해서 가비아, doDaddy 등 사이트를 몇 군데 봤는데, 안정적이고 저렴한 가격에 사용할 수 있는 AWS에서 도메인을 구매하기로 했다. 일반적으로 만원정도 가격대인데 필자가 구매한 .link 도메인은 1년당 6천원대로 저렴해서 구매했다. 

 

간단하게 구매 과정을 설명하면, AWS에서 route 53 서비스로 들어간다. 들어가서 도메인 구매를 하면 되는데 이미 구매하고 등록이 되어 있어서 사진이 아래와 같이 보이지만, 첫 구매시에는 숫자 '1'이 없는 것이 정상!

 

 

도메인 등록과정은 원하는 도메인 이름을 쓰고 사용할 수 있는 도메인이 있는지 찾아서 구매하면 된다. 도메인 이름은 영문자로 하는 것을 추천한다. 구매 내용을 쓰고 오래 관리하는 프로젝트가 아니라면 자동갱신 비활성화 처리를 해서 비용폭탄을 막아준다.


2-2. 도메인 연결하기

도메인 연결을 위해서는 아까 2-1.의 사진을 참고해서 DNS 관리 페이지에 들어간다. 이미 AWS에서 구매했기 때문에 아래와 같이 호스팅 영역이 생성되어 있는 것을 볼 수 있다. 

 

 

도메인 이름을 클릭하면, NS, SOA 유형의 레코드가 설치되어 있는 것을 볼 수 있다. 외부 도메인 서비스를 이용한 경우에는 NS의 값을 네임서버로 등록해줘야 하지만 AWS에서 구매한 경우에는 별도 설정이 필요없다. 

 

EC2로 만든 프로젝트를 도메인 연결하기 위해서 레코드를 새로 생성한다. 생성 페이지에서 값은 이전에 만든 탄력적 IP 주소를 입력하고 레코드이름에 www 인 것과 빈 칸인 것으로 2개를 등록해준다. 일반적으로 www. 입력하고 들어갈 수 있는 페이지 생성을 위한 것이다.

 

 

생성이 완료되면, 해당 도메인 주소를 입력해서 프로젝트 창이 잘 뜨는지 확인한다.


+ 만약 도메인 등록을 했는데 연결이 되지 않는다면?

(1) 몇 가지 경우의 수를 생각해 볼 수 있는데 등록한 링크가 입력주소와 다른 경우

(2) 아파치, 톰캣이 설치되지 않은 경우

    Spring intializr(Gradle), IntelliJ, AWS EC2를 이용한 포트폴리오 만들기 - 5단계 배포하기(1)

    이전 단계를 참조해서 설치 설정을 확인하자!

(3) 도메인이 제대로 등록되지 않은 경우

    DNS Checker 를 이용해서 도메인 등록이 잘 됐는지 확인하자!


3. url 정리하기

 

3-1. 프로젝트명 지우기

url을 간단하게 만들기 위해 불필요한 프로젝트명을 지우자. 이전에는 서버IP주소:8080/프로젝트명으로 확인했지만 이제 server.xml 설정을 변경해서 프로젝트명을 제거하기로 한다.

 

현재 실행환경인 Ubuntu 20.04, tomcat9 환경에서 server.xml 경로는 /etc/tomcat9 에 있다. 여기서 root 권한으로 server.xml 파일 <HOST> 태그 내에 <Context docBase="프로젝트명" path="/" reloadable="false"/> 를 추가해준다.


+ ".xxx.swp" already exists!

server.xml 수정을 제대로 하지 않고 작성하다가 세션이 종료된 경우, ".xxx.swp" already exists! 에러가 뜬다. 이 경우, server.xml 경로에서 swp 파일을 삭제하고, 다시 server.xml 문서를 확인할 수 있다.


3-2. 8080 포트번호 지우기

url을 간단하게 만들기 위해 불필요한 8080 포트번호를 지우자.

 

root 권한에서 iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 명령어를 입력하면 된다. 80으로 들어오는 포트를 8080으로 들어오는 것으로 해석하라는 의미이다.


+ [참고] 기타 도메인 서비스이용하기

도메인을 얻기 위해서 무료로 사용할 수 있는 사이트인 freenom을 이용했다. 사이트 이용을 위해서는 먼저 사용할 수 있는 도메인을 찾고 가입을 해줘야 한다. .ga, .tk 등의 free 도메인을 선택하면 되는데 chrome 환경에서 일부 작동하지 않는 부분이 있어서 다른 브라우저(네이버 whale)로 실행시켜서 했다.

 

만약 shop.ga라는 도메인을 만들고 싶다면, shop이 아닌 shop.ga로 검색하면 cart에 잘 담긴다. cart에 도메인이 담기면 next로 다음 설정을 하고 가입을 진행한다.

 

메일 인증을 하고 다시 로그인을 해서 도메인 설정을 해주자. My Domains > Manage Domain > Manage Freenom DNS 설정에 들어간다. 자신의 탄력적 IP를 등록해주고 www.도메인주소로도 접속이 가능하도록 아래와 같이 추가해준다.

 

 

+ 사이트에 연결할 수 없음

약 5분정도 시간경과 후 변경한 도메인으로 접속했는데 접속되지 않았다. 무료 도메인이라 그렇다는 이야기도 많이 보이고 다들 다른 도메인을 사용하라고 추천하기에 일단 freenom 무료 도메인은 사용하지 않기로 했다.


도메인 이름 등록

ec2 기반 웹서버에 freenom을 이용한 무료 도메인 사용하기

무료 도메인 등록 간편한 2가지 방법

.tk(freenom) 로 접속이 안되는 분들이 요즘 왕왕보이네요.

Linux Edit the file appears Swap file ".xxx.swp" already exists!

[아마존 AWS EC2] AWS서버 8080 톰캣 포트 숨기기

리눅스 파일 편집 및 관리

[아마존 AWS EC2] 인스턴스에 Route 53 서버 도메인 주소 연결 및 설정하기

AWSKRUG- AWS한국사용자모임

[AWS] 도메인과 서버(EC2) 연결하기

도메인 이름 등록

AWS : Route 53 요금 및 비용 산정

[매뉴얼][초보자를 위한 AWS 웹구축] 8. 무료 도메인으로 Route 53 등록 및 ELB 연결

 

댓글