본문 바로가기
서버/환경설정

[서버 개발 환경 구축] 8. 서브 도메인 및 IP to Domain redirection

by 베어 그릴스 2022. 7. 24.
320x100

 

개발한 서버를 사람들이 사용한다고 생각하면 내가 진짜 개발할 서버 그리고 사람들이 사용할 서버 이렇게 두가지로 나누어서 사용할 필요가 생긴다.

 

이를 위해 서브 도메인 적용하는 방법을 알아보자.

 

1. 서브 도메인 추가


My 가비아 - 도메인 관리 - 도메인 연결 - 원하는 도메인 설정에 가서 도메인을 추가해야한다.

 

우리는 dev.example.com 에서 개발을 진행할거고, prod.example.com에서 사람들에게 출시를 할 것이니 위 두 도메인을 추가해주어야한다.

 

다음과 같이 추가해준다.

 

2. Nginx 설정파일


우리는 현재 nginx에서는 서브 도메인으로 도메인에 접근했을 때 어떻게 연결할지 nginx에서 알지 못하기 때문에 해당 처리를 설정 파일에서 해주어야한다.

 

우선 dev가 불렸을 때 사용할 폴더와 prod가 불렸을 때 사용할 폴더를 나눠주자.

cd /var/www/html #도메인 접근 시 접근되는 원래 폴더

sudo mkdir dev #폴더 만들기

sudo mkdir prod #폴더 만들기

이제 각 폴더 내부에도 phpinfo 페이지를 하나하나 만들어주자.

 

 

cd ./dev
sudo vi devphpinfo.php

cd ./prod
sudo vi prodphpinfo.php
<?php
phpinfo();
?>

 

이제 nginx 설정 파일로 가주자.

 

 

sudo vi /etc/nginx/sites-available/default

서브 도메인으로 접속 시 서버 설정을 위해 다음과 같은 서버블록을 dev prod 각각 하나씩 만들어준다.

server {
	root /var/www/html/prod;
    index index.html index.htm index.nginx-debian.html prodphpinfo.php;
    server_name prod.jwoo.shop;
    
    location ~ \.php$ {
    	include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.1-fpm.sock;
    }
    location / {
    	try_files $uri $uri/ =404;
    }

}

 

설정 파일을 새로 만들었으니 nginx를 재시작 해준다.

 

sudo service nginx restart

 

이제 실행해주면,

다음과 같이 화면이 나오는 것을 알 수 있다.

 

해당 서브 도메인에도 똑같이 certbot을 사용해서 https접근으로 redirect를 해주자.

참고: https://developbear.tistory.com/57

 

[서버 개발 환경 구축] 7. Let's Encrypt를 이용하여 Nginx에 HTTPS 적용하기, http https 리다이렉트

지금 우리의 서버는 https로 접근이 안된다. 즉, 보안에 매우 취약한 것을 알 수 있다. Let's Encrypt를 이용하여 우리 도메인에 http가 아닌 https를 적용해보자. certbot 설치 Let's Encrpt를 사용하여 SSL 인..

developbear.tistory.com

자동으로 https 포트로 리다이렉트 되는 것을 볼 수 있을 것이다.

728x90