본문 바로가기

전체 글33

백준 10799번 [쇠막대기] const fs = require('fs'); const input = fs.readFileSync("/dev/stdin").toString().trim(); const inputArr = input.split(""); let stack = [] // 쇠막대기 저장할 stack let cnt = 0 const len = inputArr.length; for(let i=0; i 2023. 9. 15.
Stack - 이론 Stack 1. 스택(Stack) 후입선출(Last-In-First-Out)의 특징을 가지는 기본적인 자료구조 중 하나. 2. 스택 사용법 with JavaScript 자바스크립트에서는 배열이 스택의 연산을 지원. pop()과 push()가 가능. 2023. 9. 15.
"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.