목록전체 글 (64)
프로그래밍 공부방

🙀문제점 👉문제 내용 Next.js에서 환경변수를 설정해서 사용하던 도중에 오류가 발생했습니다. EmailJs의 service ID를 환경변수로 사용하고 있는데 자꾸 service ID가 없다고 떴습니다. 혹시 환경변수에서 값을 못가져오나 싶어서 환경변수 값을 console로 찍어봤더니 undefined가 떴습니다. 따라서 service ID의 문제가 아니고 환경변수를 불러오는데에 문제가 있음을 발견했습니다. 👉문제 원인 이전에는 환경변수를 Node.js 환경에서 사용했기 때문에 변수명을 맘대로 지어도 문제가 없었지만, 이번에는 환경변수를 브라우저에서 사용하려고 했기 때문에 문제가 발생한 것이었습니다. ✨해결 방법 환경변수의 이름을 정할 때 이름 앞에 NEXT_PUBLIC_을 붙여주면 해결됩니다. 👉기존..

안녕하세요. 오늘은 이메일 기능 구현을 위해 EmailJS 사용 방법에 대해서 알아보곘습니다. 원래는 Twilio의 Email API를 이용하려고 했지만 회원가입하자마자 로그인이 막혀서... 결국 사용하지 못했습니다. 제가 구현하려는 기능에 EmailJS를 이용하는 것이 좋은 방법은 아닙니다. 우선은 EmailJS로 구현을 해본 후 나중에 제 의도에 더 알맞은 이메일 서비스를 찾아보겠습니다..! 🐥EmailJS 이용 방법 1. EmailJS 홈페이지 접속 후 Add New Service 클릭 - 저는 이미 한개를 연동해놔서 Gmail이 있는 겁니다. 2. 본인이 사용할 이메일 서비스를 선택합니다. - 예를 들어 Gmail을 선택하면 Gmail에서 메시지를 보내주는 겁니다. 3. Connect Accoun..

🐥 AWS SSL 인증서 만들기 안녕하세요. 이번에는 인증서 만드는 방법에 대해서 설명하겠습니다. 1. 먼저 도메인을 하나 구매합니다. 가비아에서 저렴한 거 찾아서 사면 좋습니다..! 전 500원에 샀어요 2. 도메인을 구매한 후 AWS의 Certificate Manager > 인층서 요청 으로 갑니다. 퍼블릭 인증서 요청을 선택한 후 다음을 눌러줍니다. 3. 위에서 구매한 도메인을 아래 적어주고 다른 설정도 아래와 같이 설정해줍니다. 저는 이미 인증서가 있는 상태라서 아래와 같이 상태가 '발급됨', 갱신 자격도 적격이고 도메인도 추가가 되어있습니다. 하지만 만든 직후에는 DNS 검증이 되어있지 않기 때문에 보류 상태입니다. 따라서 DNS 검증을 해주어야합니다. DNS 검증을 위해 Route 53 서비스..

🐥 AWS 보안 그룹 생성하기 안녕하세요. 이번에는 AWS 보안 그룹 생성에 대해서 설명해보겠습니다. 일단 AWS에 들어가서 EC2 > 네트워크 및 보안 > 보안 그룹 으로 들어갑니다. 그리고 보안 그룹 생성을 클릭해주세요. 1. 보안 그룹의 이름을 설정해주시고 VPC는 사용할 인스턴스와 같게 설정해줍니다. 2. 인바운드 규칙으로 아래와 같이 설정해줍니다. 사용자 지정 TCP 포트 범위에는 본인이 사용하는 포트 번호를 입력해주세요. 이를 통해 로드 밸런서가 해당 포트와 통신이 가능한지 확인할 수 있습니다. (👉인바운드란? 외부 네트워크에서 발생해 내부 네트워크로 패킷이 전달되는 것) 3. 아웃바운드는 아래와 같이 설정해줍니다. (👉아웃바운드란? 내부 네트워크에서 발생해 외부 네트워크로 패킷이 전달되는 것..

🐥Application Load balancer 설정하는 방법 안녕하세요. 이번에는 AWS 로드 밸런서 설정에 대해 알아보겠습니다. 일단 AWS에 들어가서 EC2 > 로드 밸런싱 > 로드밸런서 로 들어갑니다. 그리고 Create load balancer를 클릭해주세요. 1. Basic configuration 로드밸런서의 이름을 적어주고 아래와 같이 설정해줍니다. 2. VPC는 사용할 인스턴스에서 설정되어있는 것과 같은 것을 선택합니다. 3. Mappings는 4개 모두 선택해주었습니다. 4. Security groups 보안그룹은 이전에 만든 보안그룹으로 설정해주었습니다. 보안 그룹 설정하는 방법을 모르신다면 👉 AWS 보안 그룹 설정하는 방법 5. Listeners and routing HTTP:80..

🐥 EC2의 Target group 설정하는 방법 안녕하세요 로드 밸런서를 설정하다보니 Target group이 필요했습니다. 따라서 이번에는 Target group 설정하는 방법에 대해서 알아보겠습니다. 일단 AWS에 들어가서 EC2 > 로드 밸런싱 > 대상 그룹 으로 들어갑니다. 그리고 Create Target Group을 클릭해주세요. 1. 대상 유형은 인스턴스를 선택해주세요. 2. Protocol과 Port는 본인이 사용하는 서버에 따라서 설정해주세요. -> 저의 경우에는 HTTP와 5000번 포트를 사용하기 때문에 HTTP, 5000으로 설정해주었습니다. 3. VPC는 본인이 생성했던 인스턴스에서 설정되어있는 것과 같은 것으로 선택해줍니다. 4. Protocol 버전은 HTTP1으로 설정해주었습..

🐥 AWS EC2 인스턴스 생성하기 안녕하세요. 오늘은 AWS EC2 인스턴스를 생성하는 방법에 대해서 알아보겠습니다. 1. EC2 > 인스턴스로 이동한 후 인스턴스 시작을 클릭해줍니다. - 인스턴스 이름을 적어줍니다. 2. 애플리케이션 및 OS 이미지 - 저는 Ubuntu 서버가 편하기 때문에 ubuntu를 선택해주었습니다. - AMI는 프리티어를 이용하는 사람이 사용 가능한 AMI를 선택했습니다. 3. 인스턴스 유형 - 인스턴스 유형도 프리티어를 이용하는 사람이 사용 가능한 인스턴스 유형 선택했습니다. 4. 키 페어 - 키 페어가 없으신 분은 새 키 페어 생성을 클릭해줍니다. 키 페어 이름을 적어주고 유형은 RSA를 선택해줍니다. 프라이빗 키 파일 형식은 PuTTY를 사용해서 서버 접속하는 것이 편하..

🔥에러 내용 PM2란 node.js의 프로세스 관리자입니다. PM2를 이용해서 이용해서 Node.js 서버를 무중단 배포할 수 있습니다. 저도 제가 만든 node.js 서버를 중단하지 않고 계속 돌리기 위해서 PM2를 이용했는데요... 문제가 생겼습니다... 🤷♀️Why?🤷♀️ 로컬 pm2를 실행시켜야하는데 node_modules에 로컬 pm2와 글로벌 pm2가 설치되어있을 경우에 글로벌 pm2로 실행이 되어서 이런 오류가 날 수 있다고 하네요. ✨해결 방법 프로젝트 폴더로 이동한 후에 아래처럼 입력해주었습니다. $ ./node_modules/.bin/pm2 install typescript $ ./node_modules/.bin/pm2 start [실행시킬 파일] --watch 잘 실행되는 것을 확..