1. 도메인 구매
가비아에서 테스트용으로 'woohyeon.store'를 구입했다.
2. Cloudflare에 도메인 등록
도메인을 등록하고, 도메인에 대한 DNS관리에서 DNS 레코드를 수정해줘야 한다.
도메인과 EC2 서버를 연결하기 위해서 A레코드에 EC2의 Public IP 주소를 등록해준다.
또한 'www.woohyeon.store'로 접속해도 'woohyeon.store'로 맵핑되도록 해주기 위해 CNAME 레코드에 이름을 www로 등록해준다.
- 형식 : A, 이름 : 도메인, IPv4 주소 : EC2 인스턴스의 public IP주소
- 형식 : CNAME 이름 : www 대상 : 도메인
3. SSL/TLS 등록
SSL/TLS란 브라우저와 서버 간 통신을 암호화해주는 프로토콜이고, HTTPS로 접속할때 SSL/TLS가 사용된다.
이를 통해 클라이언트와 서버간의 데이터를 암호화 하여 중간에서 데이터를 가로채도 해독 불가능하게 만든다.
브라우저에서 나의 도메인으로 접속을 하면 그 요청은 Cloudflare를 거쳐 나의 서버로 이동하게 되는데,
나는 SSL모드를 '가변'으로 설정하여 브라우저와 Cloudflare 사이의 데이터를 암호화 하도록 하였다.
4. Cloudflare 네임서버를 가비아에 등록
가비아는 도메인을 내 소유로 등록해주는 곳이고, 실제 트래픽을 처리해주지 않기 때문에 이 도메인의 IP나 서브 도메인 정보를 어디서 찾아라고 알려주는 네임서버(NS)를 가비아에 등록해줘야 한다.
5. Nginx 설정
Cloudflare에서 웹서버로 요청이 올때는 80포트로 들어오고 이 요청을 스프링서버(8080포트)로 포워딩 해주기 위해 Nginx를 사용했다.
server {
listen 80 default_server;
server_name woohyeon.store www.woohyeon.store;
# API 요청은 스프링으로 프록시
location /api/ {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Host $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;
proxy_set_header X-Forwarded-Host $host;
}
# 파비콘 요청 무시
location = /favicon.ico { return 204; }
}
<테스트 결과>
'Deployment > Cloudflare' 카테고리의 다른 글
Cloudflare를 사용하여 EC2 웹서버에 HTTPS 적용하기 (0) | 2025.06.24 |
---|