최대 1 분 소요

connect-redis 설치하기

npm i connect-redis

만약 redis와 express-session이 설치되어있지 않다면…

npm install redis connect-redis express-session

server.js 코드 변경

첫 번째 방법

var session = require('express-session');
. . .
var RedisStore = require('connect-redis')(session);
var redisClient = require('redis').createClient({url: process.env.REDIS_URL});
var redisOptions = {
        client: redisClient,
        no_ready_check: true,
        ttl: 600,
        logErrors: true
};
var redisSessionStore = new RedisStore(redisOptions);

app.use(session({
    saveUninitialized: false,
    resave: false,
    secret: process.env.COOKIE_SECRET,
    store: redisSessionStore,
    cookie: {
        httpOnly: true,
        secure: false,
    }
}));

두 번째 방법

const session = require('express-session');
const connectRedis = require('connect-redis');
const RedisStore = connectRedis(session);
const redisClient = require('redis').createClient({url: process.env.REDIS_URL});
const sess = {
    resave: false,
    saveUninitialized: false,
    secret: env.COOKIE_SECRET,
    cookie: {
        httpOnly: true,
        secure: true, // https 적용
        domain: process.env.NODE_ENV === 'production' && '.dwintel.tk'
    },
    store: new RedisStore({
        client: redisClient,
        logErrors: true
    }),
}
. . .
app.use(session(sess));

첫 번재 방법과 두 번째 방법 아무거나 사용해도 상관 없을 것 같다.

npm script 변경

cross-env 설치

npm i cross-env

start script 변경

start script는 package.json에서 변경한다.

"scripts": {
    "start": "cross-env NODE_ENV=production node bin/www.js"
  },

📝 참고

ZeroCho
npm 공식
리뷰나라



💛 개인 공부 기록용 블로그입니다. 👻

맨 위로 이동하기

태그:

카테고리:

업데이트: