본문 바로가기

블록체인 기반 핀테크 및 응용 SW개발자 양성과정 일기

[호스팅] aws 탄력적 고정 ip 만들기 / 도메인 주소 연결 / http https 변환 (back end server - nginx)

반응형

 

1)  탄력적 고정 ip 만들기 

1. aws - 탄력적ip -> 할당 클릭 - >할당 - > 이름 변경  => 할당된 IPv4 주소 나옴 

 

2. 할당된 내용 -> 주소 연결 -> 인스턴스 선택 -> 프라이빗 ip 선택 (자동으로 뜸) -> 확인 

=> 탄력적 ip 보기에 보면 인스턴스ID, 연결ID 등등이 생김 

할당된 IPv4주소 가 나온다 

 

 

 

 

2)  도메인 주소 연결

* aws route53 에서 도메인을 사면 편리하게 도메인 연결 / SSL 인증서 발급할 수 있다!

 

1. 가비아 도메인 산 곳 들어가서 -> 해당 도메인 관리 -> 네임서버 설정 

2. router53 들어감 

3. 호스팅 생성 -> 도메인 / info 입력 -> 레코드 생성 -> 레코드 유형 : A-IPv4 / 값에 back or front 고정ip 주소 입력 

-> 생성 누르면 레코드 쭉 나오고 -> 라우팅 대상 주소 (NS유형) 을 기억하기 -> 4개 -> 요거를 router 53에 차례로 '.'을 빼고 적어주기 

 

* 승희님 블로그 참고하기 ! 

https://velog.io/@nara7875/%EB%8F%84%EB%A9%94%EC%9D%B8-%EC%97%B0%EA%B2%B0%ED%95%98%EA%B8%B0-%EB%B0%8F-front-%EC%84%9C%EB%B2%84%EC%97%90-%EC%98%AC%EB%A6%AC%EA%B8%B0

 

도메인 연결하기 및 front 서버에 올리기

가비아나 후이즈 사이트에서 주소를 검색한 후에 구매한다.사용하기에는 1-2일정도 걸린다. 여기서부터 왔다갔다가 많이 필요하다. 탄력적 IP를 만드는 목적기존 아마존 서버는 IP가 계속 변한다

velog.io

 

 

 

 

 

 

 

 

 

3) https 연결 

https://blckchainetc.tistory.com/301

 

[100일차] Next 배포 방법 / https 도메인 연결

프론트 서버 amazon ec2 사용 올리기 1 대의 pc에서는 똑같은 port no를 사용할 수 없다. ex) server.js 두 파일 모두 port:80 이라면 -> 에러 오늘 올릴려는 환경 : Next.js (React로 만들어진 프레임워크) 우리..

blckchainetc.tistory.com

nginx 설치 -> certbot 로 https 설정 

nginx port = 80 *** 무조건 -> linux port -> 3001로 변경함 (1컴1port) 

-> http~주소 쳐서 nginx 잘 되는지 확인 

-> MYCONF 잘쓰기 

 

cd /etc/nginx/sites-available 
sudo vi myapp.conf

아래 코드 입력  (나중에 certbot 설치 하면 certbot이 아래 코드에 자동으로 코드들을 추가 시켜줌)

server {
    listen 80;
    server_name byddothis.com;
    location / {
        proxy_pass http://localhost:3001;
    }
}

-> TCP 인바운드 규칙 설정 (3001에 대해서도 들어올 수 있게끔 허락하기) 

HTTP, HTTPS - TCP (3001번 port 열기) 

 

ERROR 해결하는데 오래걸린 에러 

-> linux 서버 sudo node server.js / sudo systemctl start nginx 두 개를 on 시키고 브라우저에 도메인 주소 입력 -> 

 

Client ---req---> Proxy Server (nginx) 까지는 잘 도착했는데 ----- req----> Linux node server으로 요청이 잘 도착했는지 아니면   응답이 문제인건지 찾아보기 

 

http://www.byddothis.com:3001/msg/mywords

이렇게 치면 잘 나와. 근데 3001(node port)를 뺴면 안나옴 ! -> nginx의 문제같음!! 

 

오류 해결 방법 

0) aws 보안그룹 에 사용자지정 TCP - 00:// & 0.0.0.0/0 요 두 개 추가 & 위에 고정 ip 만들 때 도메인주소를 www.을 붙여서 쓴 실수 ! -> 삭제 후 다시 만들기 

1) myapp.conf  환경설정을 302 -> 307 or 308 로 바꾸기 

2) body parsing 할 수 있게 코드 추가하기 

 

-> sudo systemctl start nginx  => postman 잘 나옴 

 

2021.09.02 

 

signup, 등 post로 보내는 nginx 재설정 중  ( 이후에 이미지 올리는 nginx설정만하면 됨) 

 

 

byd 프로젝트 하면서 사진 올리기 / json 올리면서 고친 nginx 최종본 

https://blckchainetc.tistory.com/300

 

[91-110일차] 어플 개발 with React Native Expo

Android & ios App 개발 일지 (React Native Expo 사용)  Timeline  7/26 (월)  BYD 프로젝트 시작 ! 어플 방향, 목적, 타겟, 만들 Pages, DB, tables 정하기 7/27~8/1 (화-일) 각자 React Native 공부 8/2~8/..

blckchainetc.tistory.com

 

 

 

 

 

이제 https 인증서 3개월 자동 갱신되도록 만들기 

 

Crontab 크론탭이라는 프로그램이 ubuntu에 기본 설치되어 있음! 요걸 사용해서 3개월 주기로 자동 갱신되도록 만들기 

sudo crontab -l           //crontab 보기 
sudo crontab -e          // crontab 편집
view /var/log/syslog     // crontab 실행 로그 

Crontab 의 규칙

분/시/일/월/요일/명령 순서

 

예시) 매월 1일 18시에 인증서를 갱신하고 싶을 때 

$ 0 18 1 * * /usr/bin/certbot renew --renew-hook="sudo systemctl restart apache2"

 

 

cd /etc/cron.d    
ls -al            // -> certbot 파일이 있는지 확인 ! (아마 없을 것.. -> 만들기 vi) 
sudo vi certbot    //앞에 etc 여서 관리자로 실행  --> 아래 내용 입력 

SHELL=/bin/sh
PATH=/user/local/sbin:/user/local/bin:/sbin:/bin:/user/sbin:/user/bin
0 */12 * * * root certbot -q renew --nginx --renew-hook 'service nginx reload'

 

https://blckchainetc.tistory.com/301

 

[100일차] Next 배포 방법 / https 도메인 연결

프론트 서버 amazon ec2 사용 올리기 1 대의 pc에서는 똑같은 port no를 사용할 수 없다. ex) server.js 두 파일 모두 port:80 이라면 -> 에러 오늘 올릴려는 환경 : Next.js (React로 만들어진 프레임워크) 우리..

blckchainetc.tistory.com

 

 

 

 

 

 

 

 

references:  가비아 dns 설정 

https://customer.gabia.com/manual/domain/287/1201

 

가비아: 국내 1위

 

customer.gabia.com

 

도메인 확인하는 곳 

https://check-your-website.server-daten.de/?q=nunomira.pt 

 

Make your website better

Check your redirects http - https, your preferred version (www vs. non-www), certificates, connections and your html-content. A ranking system shows, if your domain is A+ (no errors + preload), has errors (https - http) or loops.

check-your-website.server-daten.de

 

https://devlog.jwgo.kr/2019/04/16/how-to-lets-encrypt-ssl-renew/

 

Let's Encrypt SSL 인증서 자동 갱신 설정 방법 · Tonic

사이트 운영에 도움을 주실 수 있습니다. 고맙습니다. --> Let's Encrypt SSL 인증서 자동 갱신 설정 방법 2019년 04월 16일 Let’s Encrypt에서 발급하는 인증서는 90일짜리 단기 인증서입니다. 3개월에 적어

devlog.jwgo.kr

 

 

https://velog.io/@nara7875/%EB%8F%84%EB%A9%94%EC%9D%B8-%EC%97%B0%EA%B2%B0%ED%95%98%EA%B8%B0-%EB%B0%8F-front-%EC%84%9C%EB%B2%84%EC%97%90-%EC%98%AC%EB%A6%AC%EA%B8%B0

 

도메인 연결하기 및 front 서버에 올리기

가비아나 후이즈 사이트에서 주소를 검색한 후에 구매한다.사용하기에는 1-2일정도 걸린다. 여기서부터 왔다갔다가 많이 필요하다. 탄력적 IP를 만드는 목적기존 아마존 서버는 IP가 계속 변한다

velog.io

 

반응형