
회사에서 서버를 배포하려고 하니 로컬환경에서는 문제 없이 잘 작동되는 exress-session에서 자꾸 warning을 뱉어내서 알아보니 production 환경에서는 제대로 작동하지 않는다는 것이었다. 그래서 결국 redis를 쓰기로 다짐했다. Node 프로젝트에서 pm2로 다중 클러스터 인프라를 구축했다면 세션 불일치 문제가 생기게 마련이다. 만일 서버가 종료되어 메모리가 날라가면 접속자들의 로그인이나 혹은 기타 세션들이 모두 날라가버리게 된다. 따라서 이를 방지하기 위해 세션 아이디와 실제 사용자 정보를 외부 데이터베이스에 저장하는 편이다. 이때 개발자들이 많이 사용하는 것이 Redis db이다. 다른 데이터베이스를 사용해도 되지만, 세션은 빠릿빠릿하게 응답을 해야되기 떄문에 메모리 기반의 데이터..

CMD에서 다음의 명령을 사용해 express를 설치하시오 npm install express-generator -g 그러면 이제 express-generator를 사용할 수 있습니다. Step 1. 새 App 디렉토리를 만듭시다. cmd를 켜고 cd /desktop으로 디렉토리를 바꾸고 새로운 app을 생성 ㄱㄱ express --view=ejs myApp cd myApp code . myApp 디렉토리로 이동 하고 편집기를 엽니다. Step 2. 필요한 모듈들을 설치합니다. npm i express express-session express-flash express-validator method-override mysql http-errors cookie-parser body-parser morgan..
'템플릿엔진'이란? 웹 프로그래밍을 할 때 주로 사용하는 마크업 언어인 HTML은 정적인 언어이다. 따라서 Javascript로 표현하면 반복문으로 간단하게 처리할 수 있는 동적 연산을 HTML으로만 표현하게 되면 일일이 직접 적어주어야 하는데, 이런 과정이 불편해서 나온것이 '템플릿엔진' 이다. 템플릿 엔진은 Javascript를 사용해서 HTML을 렌더링할 수 있게 도와주는 도구이다. 템플릿엔진의 종류 Pug(Jade) EJS Handlebars ...... 템플릿엔진에는 굉장히 다양한 종류가 있지만, 대표적으로는 Pug와 EJS를 많이 사용한다. Pug(Jade) 예전 이름인 Jade로 더 유명한 Pug는 꾸준히 많은 인기를 얻고 있는 엔진이다. Pug 구조와 HTML 구조 비교 doctype ht..

서버와 클라이언트가 통신을 할 때 통신이 연속적으로 이어지지 않고 한 번 통신이 되면 끊어진다. 따라서 서버는 클라이언트가 누구인지 계속 인증을 해주어야 한다. 하지만 그것은 매우 귀찮고 번거로운 일이다. 또한 웹페이지의 로딩을 느리게 만드는 요인이 되기도 한다. 그런 번거로움을 해결하는 방법이 바로 쿠키와 세션이다. 정리하면, 클라이언트와 정보 유지를 하기 위해 사용하는 것이 쿠키와 세션이다. ◆동작방식 ◆쿠키 1. 개념 쿠키는 클라이언트 로컬(local)에 저장되는 키와 값(key, value)이 들어있는 작은 데이터 파일이다. 쿠키는 서버에서 HTTP Response Header에 Set-Cookie 속성을 이용하여 클라이언트에 쿠키를 제공한다. 쿠키에는 이름, 값, 만료 날짜/시간(쿠키 저장기간)..
◆자바스크립트(JavaScript) 자바스크립트는 정적인 HTML 콘텐츠를 프로그램 구현을 통해 동적으로 변경하거나 사용자와의 상호작용을 담당하게 됩니다. HTML이나 CSS와 달리 자바스크립트는 C언어, 자바와 같은 일반 프로그램언어와 비슷한 구조를 가지고 있습니다. 따라서 단순히 콘텐츠 제작만을 생각하는 프론트엔드 초보 개발자에게는 가장 어려운 부분이라 할 수 있습니다. 자바스크립트는 객체(Object) 기반의 스크립트 언어로 기본적으로는 웹 브라우저에서 해석되는 인터프리터 언어이며 Node.js와 같은 프레임워크를 사용하면 서버 프로그래밍에도 사용할 수 있습니다. 현재 컴퓨터나 스마트폰 등에 포함된 웹 브라우저에는 자바스크립트 인터프리터가 내장되어 있습니다. ●자바스크립트 특징 동적이며 타입을 명시..