错误:redis连接到127.0.0.1:6379失败-连接到127.0.0.1:6379

bvn4nwqk  于 2021-06-09  发布在  Redis
关注(0)|答案(2)|浏览(578)

我已经创建了一个使用redis的nodejs服务器。当我在我的机器上运行它时,它运行得很好。但是当我尝试将代码推送到heroku时,出现了上面的错误。我已经安装了redis togo,我可以看到 REDISTOGO_URL 在我的配置变量中。
我做了以下几件事:

let RedisStore = require('connect-redis')(session)

let redisClient = redis.createClient()
if(process.env.REDISCLOUD_URL){
    let redisURL = url.parse(process.env.REDISCLOUD_URL);
    redisClient = redis.createClient(redisURL)
}

我的应用程序在开发过程中运行良好,但当我尝试在heroku中启动应用程序时,出现以下错误 heroku logs --tail :
错误:redis连接到127.0.0.1:6379失败-连接到127.0.0.1:6379

hrysbysz

hrysbysz1#

出现这个错误是因为您首先尝试使用 redis.createClient() . 默认情况下,它将连接到 127.0.0.1:6379 .
它在localhost上运行良好,因为它不会进入 if (process.env.REDISCLOUD_URL 本地redis也可以使用。
为了解决这个问题,

let redisClient
if(process.env.REDISCLOUD_URL){
    let redisURL = url.parse(process.env.REDISCLOUD_URL);
    redisClient = redis.createClient(redisURL)
} else {
    redisClient = redis.createClient()
}
w46czmvw

w46czmvw2#

您的代码似乎期望 REDISCLOUD_URL 环境变量。如果你已经定义了 REDISTOGO_URL 那就可以解释为什么它不起作用了。

相关问题