http&server

ec2 혹은 서버에 애플리케이션 서버를 https로 띄워야할 때

식피두 2021. 5. 30. 17:57

가끔 프론트 애플리케이션을 https 페이지에서 테스트하게 될 때가 있는데,

https 페이지에선 보안상의 이유로 https 통신을 지원하지 않는 api 서버에 요청을 보낼 수 없다.

 

따라서 애플리케이션 서버를 https 지원되는 서버에 띄워서..

https 웹서버로 요청을 받은 다음,

특정 포트에 임시로 띄워놓은 서버 애플리케이션으로 리다이렉트를 해줘야 한다.

 

더 나은 방법이 있을 수 있지만,

내가 주로 쓰는 방법은 다음과 같다.

 

애플리케이션 서버가 EC2에서 동작할 때 (ex. express application running on port 8080)

 

다음과 같은 순서로 작업을 진행...

  1. ec2에 nginx 설치
  2. route53을 통해 도메인 연결 (없으면 가비아에서 구매)
  3. 도메인 연결 후 certbot을 이용해서 https 설정을 해준다. (+자동 갱신까지...)
  4. nginx conf 파일에 리다이렉션을 위한 설정을 해준다. (아래 참고)

참고 자료

 

AWS EC2와 도메인 연결 (가비아)

 목표) AWS EC2에서 실행중인 웹 서버를 구매한 도메인과 연결하기 (가비아에서 구매한 도메인) 1. 우선 AWS의 Route53 서비스로 이동합니다. (https://console.aws.amazon.com/route53) 2. 두 버튼 중 아무거나..

sovovy.tistory.com

 

[Nginx] Let's Encrypt를 통해 Nginx에서 무료로 https 설정하기 - JP-HOSTING

✅일본서버호스팅 · 프록시 · 무제한디도스방어 · 고객센터

jp-hosting.jp

아래와 같이 nginx config를 설정해준다..

server {
    server_name testdomain.com;
        
    ...
        
    location /application_server_address/ {
        proxy_pass http://localhost:8080/;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
    
    ...