본문 바로가기

Back-End6

이미지 처리를 위한 AWS S3 설정 (0) 0. 시작 이미지 처리가 필요하다. 현재 두 가지 프로젝트를 해야하는데 1. 졸업작품 캡스톤 2. 그냥 전공 기말과제 이 두가지 프로젝트에서 모두 이미지처리를 해야해서 기존 프로젝트에서 했던것처럼 s3 + presigned_url 설정을 해보려한다. 기존 프로젝트에서는 내가 설정안했다. 그럼시작 2024. 4. 10.
"ec2 + pm2 + nginx"를 활용해서 node.js 배포하기 (5) 5. 도메인 설정 및 HTTPS로 배포설정 변경 배포를 하고나니, 도메인이 있었으면 좋겠고, 도메인 설정을 하고나니, HTTPS로 접속하고 싶었다. 도메인 설정 도메인은 가비아에서 1년에 1700원 .site 도메인을 구매 이 4개의 값을 이렇게 네임서버에 곱게 넣어주면 된다. (네임서버 : IP와 도메인 이름을 이어주는 역할) 1~4차에 넣은 저 값들은 AWS Route 53을 통해 제공되는 호스트 네임. HTTPS 설정 1. 리버스 프록시 설정 기존 sites-enabled에서 관리하던 설정을 conf.d로 이전 proxy_set_header X-Real-IP $remote_addr; = X-Real-IP 헤더 설정 : 리버스 프록시를 통과한 요청의 실제 클라이언트 IP주소를 저장. 백엔드 서버에서 .. 2023. 9. 13.
"ec2 + pm2 + nginx"를 활용해서 node.js 배포하기 (4) 4. MongoDB활용을 위한 환경변수 설정 문제가 발생했다. Nodejs 프로젝트를 그대로 Github에 올렸더니 하나의 메일을 받을 수 있었다. 대충 해석하자면 "MongoDB URI가 유출됨"이다. 그렇다면 해결법은 ? 임시적으로 내 레포지토리의 공개범위를 Private으로 바꿔버렸지만, 당연히 이건 해결책이 아니다. 찾아보니 "환경변수"를 설정해서 주소를 숨길 수 있으며, Node.js에서는 "dotenv" 모듈을 활용해서 환경변수를 불러와서 사용할 수 있다고 한다. 해결 순서 1. dotenv를 활용하는 방향으로 코드 수정 2. 서버 컴퓨터 (ec2 ubuntu 인스턴스)의 프로젝트 루트 디렉토리에 .env 파일을 생성해서 환경변수 관리 1. dotenv를 활용 하는 방향으로 코드 수정 터미널에.. 2023. 9. 9.
"ec2 + pm2 + nginx"를 활용해서 node.js 배포하기 (3) 3. 배포 진행 nginx를 거치지 않고, 배포를 일단 진행 pm2 start server.js 를 입력 사진이 생략되었지만 이전에 실패했던 이유 : 인스턴스 보안 그룹에서 8080포트가 추가되지 않았었음. -> 포트 추가 8080포트 추가 이후 이후 퍼블릭 IP:8080으로 접속 시도 -> 성공 nginx 설정 명령어 cd /etc/nginx/sites-enabled etc : 리눅스의 시스템 설정 파일이 저장된 디렉토리 nginx : nginx 웹 서버의 설정 파일이 저장된 디렉토리 sites-enabled : nginx 가상 호스트 설정 파일이 저장된 디렉토리 sudo rm default : 기존 default 설정 파일 삭제 sudo vim default : 새로 생성. 내용은 하단에 작성 sud.. 2023. 9. 6.