그저 내가 되었고

☁️⟪Azure⟫ VM으로 배포한 백엔드 http 서버 ➱ https 전환 본문

개발/Cloud Computing

☁️⟪Azure⟫ VM으로 배포한 백엔드 http 서버 ➱ https 전환

hyuunii 2024. 4. 12. 16:27

1. 가비아 도메인 구입 후 레코드 추가(백엔드 ip)

 

 

 

2~3은 아래 링크 참고

https://mement-m0ri.tistory.com/96

2. vm에 nginx 설치

- nginx 설정이 필요하다(sites-available 및 sites-enabled는 이제 사용되지 않는다고 함!!)

 

1] nginx 설정 파일 편집

cd /etc/nginx/conf.d  //설정 위치 이동
sudo vim default.conf  //설정 파일 편집

 

2] default.conf에 아래 내용 기입해 넣는다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# dallog-ws /etc/nginx/conf.d/default.conf
 
server {
  listen 80;
 server_name 도메인;
 
  return 301 https::도메인;
}
 
server {
  listen 443 ssl http2;
 server_name 도메인;
 
  ssl_certificate /etc/letsencrypt/live/도메인/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/도메인/privkey.pem;
 
    # web server의 경우 리버스 프록시를 위한 proxy 설정이 들어간다.
  location / {
    proxy_pass http://{backend-prod server ip}; # backend-prod server ip
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
}
cs

 

 

내 경우 ⇩

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
server {
  listen 80;
  server_name 도메인 www.도메인;
 
  return 301 https://도메인;
}
 
server {
  listen 443 ssl http2;
 server_name 도메인 www.도메인;
 
  ssl_certificate /etc/letsencrypt/live/도메인/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/도메인/privkey.pem;
 
    # web server의 경우 리버스 프록시를 위한 proxy 설정이 들어간다.
  location / {
    proxy_pass http://localhost:포트; # backend-prod server ip
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
  }
}
cs

 

 

 

 

3] 설정 완료 이후

# nginx 재시작, 둘 중 하나

$ sudo service nginx reload
$ sudo service nginx restart

 

 

 

3. vm에 서트봇 설치

 

 

 

4. VM 네트워크 설정에서 인바운드 규칙 추가하기(443-https 포트- 열어주기)