Copyright © 2025 p. Hyun
개발 중 설계·최적화·문제 해결 과정을 기록하는 기술 중심 개발 로그.
[AWS] 서브도메인 생성 + ELB SSL 인증AWS는 Route53에서 도메인을 구매하여 연동할 수 있고 추가로 내부에서 구매한 Domain에 대한 SSL인증이 매우 간편하다.EC2의 경우는 인스턴스를 생성하여 SSL 인증을 도메인에서 Https 암호화를 진행하고ELB를 이용하여 복호화 하여 웹서버로 전달하는 방식을 사용해야한다.이 부분도 과금이 되지만 SSL인증서를 따로 관리안하고 중앙집중관리 형식으로 손쉽게 관리할 수 있다라는 점이 가장 큰 장점이라난 외부에서 SSL 인증을 하는 것을 택했다.1️⃣ 서브도메인 생성이왕 내가 구매한 도메인에 서브도메인을 만들어서 Api 전용 도메인을 만들었다.✔️ Routes 53 > 호스팅 영역 > 호스팅 영역 생성✔️생성된 서브도메인 클릭하여 네임서버 복사하여 Main 도메인 내 "NS 레코드 삽입"*서브도메인 내에 독립적으로 사용하기 위해 서브도메인에 대한 DNS 관리 권한을 위임한다.✔️ 반영 이후에는 ACM의 탭에서 서브도메인에 대한
"ELB + EC2 + ACM 배포"이미 도메인을 구입한김에 Route53을 이용하려 서브도메인을 만들고엔드포인트 Api Url을 만들어 연결하려 했다.근데 프론트는 굉장히 쉽게 배포했는데 백엔드는 조금 난이도? 가 있었다.기존에 내가 생각한 배포 전략 2가지 였다.❗둘다 Client 도메인은 SSL 인증이 되어있다는 가정"ELB를 이용한 EC2 SSL 인
cloudFront는 기본적으로 http를 채용하고 있으며,도메인을 보유하고 있다면 ACM을 이용한 SSL 무료 발급 + 갱신 서비스를 이용하여 안전하게 내 사이트를 보호하는게 좋아 보인다연결하는 과정은 아래와 같았다.Doma도메인 구매Route53 <-> cloudFront CNAME을 이용한 연동SSL 인증서1️⃣ 도메인 구매그냥 사면된다. 가비아나 가격이 싼 곳에서 구매하는 것도 좋은데 route53과의 연동을 위해 난 좀 간편하게 쓰고싶어서route53에서 도메인은 구매했다. 추후 ALB + SSL 인증 등 쉽게 하기 위해서였다.2️⃣ Route 53 <-> CludFront 연동우선적으로 cloudFront에서 구매한 도메인으로 배포 도메인 대체해주자CloudFront > 배포 > "내 배포 ID" > 설정편집 으로 이동하여서설정을 변경 하면 아래의 인증서 요청을 클릭하여 SSl인증서 발급신청구매한 도메인 이름을 기재한다."*/"로 접두사를 붙이면 서브도메인 + h-crea
CloudFront와 S3을 연동하다가 좀 머리아팠던 부분이 있어 정리해둔다..1️⃣ cloudFrontcloudFront는 aws에서 서비스하는 CDN을 말하며 정적 웹호스팅, 이미지 CDN등을 가능하게 해준다.서버에 요청을 하면 신규 데이터는 내 리전에서 데이터를 요청하고 가까운 지역 에지로케이션에 내 요청 했던 데이터들을 캐싱을 한다.브라우저 캐싱기능
AWS를 접하다보면 자주 사용되는 용어 3가지를 간단하게 정리한다.1️⃣RegionAWS는 Origin server에 직접적으로 요청하는 경우도 있지만 한국의 경우는 region 를 통해 지역적으로 유리한 위치에 서비스를 제공 받을 수 있다.이게 무슨 이야기냐면 가까운 "한국 지점" 데이터센터가 있다는 이야기로 지역적으로 먼 미국 서버를 이용하는 것이 아닌
AWS 강의를 Udemy에서 보고 있는데, 나는 S3가 그냥 이미지만 저장하는 공간인 줄 알았다.그런데 S3는 객체 스토리지 서비스로 대용량의 데이터를 저렴하게 저장할 수 있다는 설명을 들었다.이 말은 즉, S3는 이미지만 저장하는 것이 아닌 정적 파일을 저장하고 호스팅하는 데 매우 적합하다는 이야기였다.기존에 EC2에 배포했던 React 정적(Html,
기존에 SFTP 파일 형식의 서버에는 문제가 없이 짯는데생각해보니 AWS는 클라우드 서버다. 내가 업로드하는 파일시스템과 달랐기에 로직을 변경해야했다.기존 로직은 파라미터로 폴더명 분기를 받고 존재하지않으면 폴더를 생성하여서이미지 key값을 폴더명을 만들고 내부에 저장하였다.1️⃣기존 upload 로직const multer = require('multer'
웹서버에 express를 실행하게 된다면 express는 웹서버를 독점적으로 실행하고 있는 상태가 된다.이 때문에 pm2(process manager)를 설치하여 백그라운드에서 실행되며서버 가동시 exprss를 재 시작 , 코드변경시 재 시작등을 가능하게 하는 패키지로 express 컨트롤을 윤활하게 해주어야한다.1️⃣ nginx Proxy ServerNg
기존의 React + express + Mysql로 된 웹어플리케이션을 배포하려면 두가지의 Aws 서비스를 이용하는게 통상적이었다.S3(Simple Storage Service)를 이용하여 포트폴리오의 사진 upload기능을 해당 서비스를 이용해서 반영하기로 하였고EC2(Elastic Compute Cloud)를 이용해 실질 적인 사용자에게 제공 할 수있는