connect-redis 连接到 localhost 而不管提供的主机

connect-redis connects to localhost irrespective of provided host

我有一个 express 服务器,我正在使用 connect-redisexpress-session 将会话存储到我的 elasticache 实例。但应用程序仅尝试连接到本地主机。 这是错误:-

config.redisServer.host dev-xxx-site-cache.xxxxx.0001.use1.cache.amazonaws.com
listening on {"address":"::","family":"IPv6","port":8080}...
events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: Redis connection to 127.0.0.1:6379 failed - connect ECONNREFUSED 127.0.0.1:6379
    at Object.exports._errnoException (util.js:856:11)
    at exports._exceptionWithHostPort (util.js:879:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1062:14)

在代码中我提供了正确的主机 :-

const RedisStore = require('connect-redis')(expressSession);
const redisClient = redis.createClient({ host: config.redisServer.host, port: config.redisServer.port });
redisClient.on('error', err => console.error(err));

您的代码似乎是正确的,请确保您没有在没有主机名和端口的情况下在其他任何地方调用 createClient()

此外,如果您的 redis 需要密码,请确保您也提供了密码。