Nicht, um eine Verbindung zu gehosteten redis: Ready-überprüfung fehlgeschlagen: FEHLER operation not permitted

Ich versuche eine Verbindung zu einer gehosteten redis auf IrisCouch, die ich bereitgestellt, über Nodejitsu.

Was ich denke sind die relevanten Teile meiner server.js :

var redisUrl = require('url').parse(config.REDIS_CONNECTION_URI);
var client = require('redis').createClient(redisUrl.port, redisUrl.hostname);

Habe ich nicht alle Interaktion mit dem client in meinem server.js doch, was ist der Grund, warum ich denke, es ist seltsam, dass es wirft die "operation nicht erlaubt", da im Grunde die einzige operation, die ich tun müssen, ist zu verbinden. Ich habe nicht einen redis.conf-Datei, und ich glaube, ich sollte nicht müssen, da ich nicht als host für die redis-Instanz selbst.

Log:

 Express server listening on port 3000

/Users/soroushhakami/dev/projects/projectx/node_modules/redis/index.js:504
                throw callback_err;
                      ^
Error: Ready check failed: ERR operation not permitted
    at RedisClient.on_info_cmd (/Users/soroushhakami/dev/projects/projectx/node_modules/redis/index.js:317:35)
    at Command.RedisClient.ready_check.send_anyway [as callback] (/Users/soroushhakami/dev/projects/projectx/node_modules/redis/index.js:365:14)
    at RedisClient.return_error (/Users/soroushhakami/dev/projects/projectx/node_modules/redis/index.js:500:25)
    at ReplyParser.RedisClient.init_parser (/Users/soroushhakami/dev/projects/projectx/node_modules/redis/index.js:260:14)
    at ReplyParser.EventEmitter.emit (events.js:96:17)
    at ReplyParser.send_error (/Users/soroushhakami/dev/projects/projectx/node_modules/redis/lib/parser/javascript.js:293:10)
    at ReplyParser.execute (/Users/soroushhakami/dev/projects/projectx/node_modules/redis/lib/parser/javascript.js:176:22)
    at RedisClient.on_data (/Users/soroushhakami/dev/projects/projectx/node_modules/redis/index.js:476:27)
    at Socket.<anonymous> (/Users/soroushhakami/dev/projects/projectx/node_modules/redis/index.js:79:14)
    at Socket.EventEmitter.emit (events.js:96:17)

Irgendwelche Ideen auf, was das problem sein könnte?

  • Sind Sie sicher, dass der Redis-server keine Authentifizierung erforderlich ist?
  • Es funktioniert. Aber ich wollte mit client-auth.auth(Benutzername und Passwort), nachdem der client die ich erstellt hatte, den client. Auch der Fehler ist zu sagen, dass die Bereit-check fehlgeschlagen ist, nicht, dass die Auth fehlgeschlagen. Aber vielleicht ist die Fehlermeldung nicht zu vermitteln, das eigentliche problem?
  • Dieser sagt: "Ihr Anruf an den client.auth() sollte nicht innerhalb der ready-handler. Wenn Sie das tun, das falsch, client sendet eine Fehlermeldung, die sieht so ähnlich aus wie dieser Fehler: Fertig-überprüfung fehlgeschlagen: ERR-operation nicht gestattet', das ist, was Sie sehen.
  • Ich sehe. Aber ich bin nicht die Durchführung beliebiger Anrufe für den Kunden.auth hier in diesem code, aber es funktioniert nicht.
  • ich habe eine bestehende remote-redis wir hatte und es vergessen hatte requirepass Satz in seiner Breite redis.conf
Schreibe einen Kommentar