[3주차 UMC(University Makeus Challenge) 활동 ②] 가비아에서 domain...

[3주차 UMC(University Makeus Challenge) 활동 ②] 가비아에서 domain...

728x90

gabia(가비아) 도메인 주소를

실제 EC2에서 연결한 서버의 IP4 주소와 연결하는 작업을 진행할 것이다.

실제 IP4 주소를 입력하고

들어가는 것은 비효율적이기 때문이다.

1. Gabia Domain EC2 서버와 연결

가비아 홈페이지

원하는 도메인을 입력하고, 결제를 진행하면 된다.

나는 미리 사둔 shop domain이 있기 때문에 ( shop 이 가장 쌈,,,)

그 domain 으로 진행하고자 한다.

MY 가비아 -> DNS 관리 툴

호스트 www 는 www가 있어야지만 접속이 가능하게 한 것이고, @는 www가 없어도 사이트에 접속이 가능하게 하는 것이다.

앞으로 prod와 dev라는 서브 도메인을 만들 것이기 때문에 이를 미리 작성하여 준다.

노란색 부분에 EC2 public IP4 주소를 작성해주면 된다.

※도메인 주소는 실제 주소가 아닌 가상의 주소로 이와 같이 연결하면 되는 것임.

참고로, 이 설정은 바로 적용되지 않고 시간이 좀 지나야 적용이 되기 때문에 바로 다음 단계로 진행하는 것을 지양한다.

domain 주소를 입력하니 연결이 되는 것을 확인할 수 있다.

2. Let's Encrypt 를 이용해 HTTPS 적용

http로 연결하는 것은 보안에 문제가 발생할 수 있기 때문에

무료로 https, 보안 연결해주는 Let's Encrypt를 사용해보고자 한다.

//update sudo apt update //파일 위치 경로 생성 sudo add-apt-repository ppa:certbot/certbot //필요한 파일들 설치 sudo apt install certbot python3-certbot-nginx //nginx 설정 변경 sudo vi /etc/nginx/sites-available/default

server_name을 자신이 생성한 domain이름으로 변경해준다.

//test 진행 sudo nginx -t

successful

//nginx reload sudo systemctl reload nginx

//nginx를 이용해서 https 인증서 연결 sudo certbot --nginx -d xxx.shop

1. 이메일 입력

2. a

3. y

4. 2

를 입력해준다.

//https 인증서 자동 갱신 하기 //Let's Encrypt은 90일동안만 유효하기 때문 sudo certbot renew --dry-run

728x90

3. Sub Domain 적용 (dev, prod)

gabia domain에서 연결했던 subdomain을 생성해서 연결해보자.

// /var/www/html로 이동 cd /var/www/html //dev file 생성 sudo mkdir dev //prod file 생성 sudo mkdir prod

dev와 prod file 안에 간단한 html을 생성할 것이다.

// var/www/html/prod 로 이동 cd prod/ //html file 생성 sudo vi prod.html

prod web page prod subdomain webpage

// var/www/html/dev 로 이동 cd var/www/html/dev //html file 생성 sudo vi dev.html

dev web page dev subdomain webpage

이제 실제 domain에 연결을 해보자

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

파일의 맨마지막 부분에 위와 같이 내용을 입력한다.

server { root /var/www/html/dev; index dev.html; server_name dev.xxx.shop; location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.2-fpm.sock; } location / { try_files $uri $uri/ =404; } } server { root /var/www/html/prod; index prod.html; server_name prod.xxx.shop; location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.2-fpm.sock; } location / { try_files $uri $uri/ =404; } }

//nginx 재시작 sudo service nginx restart

연결이 잘 되었는지 확인해보자

연결이 잘 되는 것을 확인할 수 있다.

4. Redirection 적용 (IP to Domain)

Redirection이란 IP 주소로 연결하면 자동으로 domain 주소로 변경해주는 것을 의미한다.

즉, EC2 public IP 4 주소를 입력하면 자신이 gabia에서 생성한 주소로 자동으로 연결되는 것이다.

이를 적용해보자.

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

file 내부에 이와 같은 내용을 작성하면 된다.

server { listen 80; #server_name 뒤 부분에는 EC2 Public IP4 작성 server_name _; #자신이 생성한 domain 이름 작성 return 301 https://www.xxx.shop$request_uri; }

이를 연결하면 잘 적용된 것을 확인할 수 있다.

3주차 실습을 하던 당시에 거의 하루? 이틀? 동안 날을 새면서 이를 진행한 경험이 있는데

다시 실습을 해보니 아직까지는 어렵지만, 그 때보다는 수월하게 진행했다.

하지만 아쉬운 점은 계속 nginx가 오류가 떴는데,

이를 해결하지 못하고 다시 인스턴스를 생성했다는 점이다.

오류문 볼 수 있는 실력을 길러서,

nginx 문제를 해결할 수 있었으면 좋겠다.

아직은 많이 어렵고, 특히 ubuntu가 정말 어렵지만

그래도 열심히 노력해나아가서 코딩 실력을 늘릴 것이다.

[출처]

https://velog.io/@pinot/Ubuntu-18.04%EC%97%90%EC%84%9C-Lets-Encrypt%EB%A5%BC-%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC-Nginx%EC%97%90-SSL%EC%9D%84-%EC%A0%81%EC%9A%A9%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95

https://yusang.tistory.com/33?category=835611

https://velog.io/@banjjoknim/%EC%84%9C%EB%B8%8C-%EB%8F%84%EB%A9%94%EC%9D%B8-%EB%B0%8F-Redirection-%EC%A0%81%EC%9A%A9

https://great-park.tistory.com/m/7

728x90

from http://monynony0203.tistory.com/23 by ccl(A) rewrite - 2021-12-27 21:27:05