본문 바로가기

Server

(3)
JWT의 개념, 프론트엔드에서 해야 할 일 진행중인 프로젝트에서 기존의 SessionStorage를 사용하는 방법과 달리, JWT Token을 통해 사용자 인증을 진행할 것을 요구했다. JWT라는 것이 여러 글들을 살펴봐도 다소 장황하게 설명되어있고, 그냥 이대로 따라해라!는 내용도 많아서 개발을 진행하면서 어떤 이점들이 있는지 생각해봤고, 개인적인 생각을 글로 남겨 놓으려 한다. 이 글의 내용이 무조건 맞는 것은 아니며, 다른 점이 있다면 차차 개선해나갈 예정이다. JWT 를 통한 인증 절차 1. [프론트엔드] ID와 비밀번호를 준다. 2. [백엔드] ID와 비밀번호를 검증하고 AccessToken과 RefreshToken, AccessToken의 만료시간을 반환해준다. 이 때 생성한 RefreshToken은 DB에 {ID,RefreshToke..
Node.js Build시 Error 137 발생 원인 및 해결법 잡담 더보기 기존에 만들었던 프로젝트를 서버 내에서 빌드하려고 하니 이상하게 빌드가 안 된다. 에러코드는 137. 깊이 들어가 원인을 분석하니 대강 다음과 같았다. 1. npm install 이나 node.js로 build할 경우, 일부 종속성 패키지들은 미리 빌드된 상태로 받아오는것이 아니라, 구동하는 서버에서 직접 빌드하도록 되어있다. 2. 이 과정에서 python이나 VS (정확히는 .NET Framework라고 하더라)를 요구하는 경우가 있다. 여기서도 오류가 발생해서 한참 해멨는데, 특히 python의 경우 3 버전과 2 버전을 구분하니 혹시 빌드 오류가 나는 경우 확인해보는것이 좋다. 3. 어찌됐든 모든 문제를 해결하고 나니 에러코드 137이 일어난다. 본론 간단하게 말하면, 문제는 RAM 용..
AWS Lightsail에서 서브도메인별로 다른 페이지 띄우기 시작하기에 앞서 잡담 더보기 포트폴리오용 데모 페이지를 제공하기 위하여 하나의 Lightsail 인스턴스에서 서로 다른 2개의 Node.js 서버를 구동하고 서브도메인별로 다른 서버에 접근하도록 만들었다. 처음엔 주소/aaa 주소/bbb 처럼 하위주소로 접근하도록 만들고 싶었지만, 이 경우 static파일 접근 또는 Vue-router의 동작 관련하여 기존 프로젝트를 광범위하게 수정해야 하기에 포기하고 aaa.주소 bbb.주소 식의 서브도메인별로 접근할 수 있도록 하였다. 절차 1. 도메인 호스팅을 신청하고 Lightsail 서비스와 연결한다. 2. Lightsail 서비스 내에서 서브도메인을 만든다. 1. 각각의 Node.js 서버를 PM2로 구동한다. 2. nginx를 통해 서브도메인별로 다른 페이지..