기타/RP

도메인 연결과 서브 도메인

야챔 2021. 4. 12. 21:06

도메인 적용

도메인은 가비아에서 구매하였다.

 

DNS 관리로 들어가서 AWS EC2 인스턴스에서 퍼블릭 IPv4 주소를 A타입 레코드로 설정하여 추가해준다.

 

서브도메인은 CNAME 타입을 이용하여 dev와 prod를 만들어 주었다.

설정 후 구매한 도메인을 브라우저에서 도메인주소로 접근해 보면 잘 연결되었는지 확인 할 수 있다.

내 IP 주소에 이 화면이 나오도록 해주었기 때문에 Welcome to nginx! 가 나왔다.

 

 

※위의 DNS설정과 같이 하였는데 사이트에 연결할 수 없음이 뜨는 경우

더보기

 

분명 설정 잘 해주었는데 사진과 같이 사이트에 연결할 수 없음이라고 뜬다.

브라우저에 IP 주소를 쳤을땐 잘 나오는데... 첨엔 내가 문제인지 알고 도메인을 하나 더 구매했었는데

IP를 설정하고 가비아에서 구매한 도메인과 연결되는 시간이 좀 걸리는 것 같다.

빠르면 금방되는데 이때는 6시간 넘게 이 상태였는데 다음날에 다시 확인하였을땐 구매한 도메인과 내 IP가 잘 연결된 것을 확인할 수 있었다.

 

 

서브 도메인 적용

DNS설정할 때 서브도메인으로 한 dev 와 prod 을 추가로 설정하였다.

 

서브도메인 dev설정 과정은 Ubuntu에서 아래와 같이 진행하였다.

 

dev.rp2airbnb.shop 이라는 디렉토리를 생성하였다.

sudo mkdir -p /var/www/dev.rp2airbnb.shop

 

 

다음 $USER를 사용하여 디렉토리의 소유권을 설정하였다.

sudo chown -R $USER:$USER /var/www/dev.rp2airbnb.shop
sudo chmod -R 755 /var/www/dev.rp2airbnb.shop

 

index.html 을 열어 html을 작성한다.

sudo vi /var/www/dev.rp2airbnb.shop/index.html

내가 작성한 HTML이다.

vi 편집기를 사용하였고 작성하려면 i키, 나갈려면 esc누르고 :wq 사용하면 된다.

 

다음은 서버블록을 생성할 것이다.

/etc/nginx/sites-available 에 가보면 defalut가 있는데 여기다가 서브도메인에 대한 서버 블록을 만들지 않고

따로 만들것이다. defalut에 서버도메인의 서버블록을 추가하면 후에 문제가 생길 수도 있다고 한다.

sudo vi /etc/nginx/sites-available/dev.rp2airbnb.shop
server {
        listen 80;
        listen [::]:80;

        root /var/www/dev.rp2airbnb.shop;
        index index.html index.htm index.nginx-debian.html;

        server_name dev.rp2airbnb.shop;

        location / {
                try_files $uri $uri/ =404;
        }
}

으로 설정해준다.

 

다음 파일을 활성화 해준다.

sudo ln -s /etc/nginx/sites-available/dev.rp2airbnb.shop /etc/nginx/sites-enabled/

 

해시 버킷 메모리 문제가 발생할 수도 있으니

sudo vi /etc/nginx/nginx.conf

빨간 줄의 주석을 풀어준다.

 

지금까지 진행한 것에 문제가 없는지 확인

sudo nginx -t

문제가 없다면 Nginx를 다시 시작해준다. 다시 시작해야 적용이 된다.

sudo systemctl restart nginx

 

브라우저에 서브도메인을 입력해주면

 

과 같이 잘 나오는 것을 확인할 수 있다.

 

prod도 위와 같이 진행하였다.

 

 

 

 

 

 

참고

www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-18-04

 

How To Install Nginx on Ubuntu 18.04 | DigitalOcean

Nginx is one of the most popular web servers in the world and is responsible for hosting some of the largest and highest-traffic sites on the internet. It is more resource-friendly than Apache in most cases and can be used as a web server or reverse p

www.digitalocean.com