注意 Redis に苦労している場合は、Redis サーバーを起動する必要があります。Windows では、redis ディストリビューションがあります。次のリンクを確認してください: https://github.com/dmajkic/redis/downloads次に、「redis-server.exe」を起動してサーバーを起動します。
node.js のチュートリアルに従っています。このチュートリアルでは Express と Redis を使用します。redis と connect-redis をインストールしました (package.json で参照されています)。
npm install redis connect-redis --save
私のserver.js(意味のある部分のみ):
var express = require('express');
var http = require('http');
var app = module.exports = express();
var RedisStore = require('connect-redis')(express);
var redis = require("redis").createClient();
app.configure(function(){
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
console.log('views', __dirname + '/views');
app.set('view engine', 'jade'); //jade as template engine
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.cookieParser());
app.use(express.session({
secret: "kqsdjfmlksdhfhzirzeoibrzecrbzuzefcuercazeafxzeokwdfzeijfxcerig",
store: new RedisStore({ host: 'localhost', port: 3000, client: redis })
}));
app.use(app.router);
app.use(express.static(__dirname + '/public'));
});
エラーメッセージ:
Express server listening on port 3000
[ERROR] Error
Error: Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED
at RedisClient.on_error (D:\Programming\Screencasts\peepcode\nodejs\peepcode
-069-full-stack-nodejs-i-mov\code\roland\HotPie\node_modules\redis\index.js:140:
24)
at Socket.<anonymous> (D:\Programming\Screencasts\peepcode\nodejs\peepcode-0
69-full-stack-nodejs-i-mov\code\roland\HotPie\node_modules\redis\index.js:74:14)
at Socket.EventEmitter.emit (events.js:88:17)
at Socket._destroy.self.errorEmitted (net.js:329:14)
at process.startup.processNextTick.process._tickCallback (node.js:244:9)
[ERROR] Error
Error: Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED
at RedisClient.on_error (D:\Programming\Screencasts\peepcode\nodejs\peepcode
-069-full-stack-nodejs-i-mov\code\roland\HotPie\node_modules\redis\index.js:140:
24)
at Socket.<anonymous> (D:\Programming\Screencasts\peepcode\nodejs\peepcode-0
Express はポート 3000 でリッスンを開始します。これは私が期待するとおりです。redis エラー メッセージには、ポート 6379 での接続が記載されています。これは、redisClient を RedisStore に渡すと発生します。これは、redis と RedisStore をバインドするために私が理解したことです。
Windowsで開発しています