【发布时间】:2016-12-21 05:29:48
【问题描述】:
我一直在阅读有关在我的 EB 实例和我的 Redis 端点之间创建连接的 Elastic Beanstalk 和 ElastiCache 文档。我已将端点添加到我的 Node.js 应用程序中的会话配置中,但它似乎没有连接到我的 Redis 实例,正如访问使用会话的任何页面时抛出的错误所指示的那样。我知道 Elastic Beanstalk 和 ElastiCache 之间的安全组需要相同,但我是否需要对我的环境进行调整以附加两者?
这是我的 Node.js 应用程序中的 Redis 连接:
//Session Cookie
app.use(cookieParser());
app.use(session({
store: new RedisStore({
host: 'redis-production.dfdfa.0001.use1.cache.amazonaws.com',
port: 6379
}),
secret: process.env.SECRET,
resave: true,
saveUninitialized: true,
cookie: {
httpOnly: true,
secure: false //turn to true on production once https is in place
}
}));
【问题讨论】:
-
错误是什么?
-
Error: req.flash() requires sessionsat /var/app/current/app/controllers/site-routes.js:34:15链接到此代码:siteRoutes.route('/login') .get(function(req, res){ res.render('pages/site/login.hbs',{ error: req.flash('error') }); })过去当我没有正确配置 redis 时这是一个问题。
标签: node.js amazon-web-services redis amazon-elastic-beanstalk amazon-elasticache