NOAUTH需要身份验证。Laravel + Redis

浏览:39日期:2024-01-31
如何解决NOAUTH需要身份验证。Laravel + Redis?

因此,在进行了一些研究之后,我得到了针对该问题的解决方案:

我们需要添加:

’options’ => [’parameters’ => [’password’ => env(’REdis_PASSWORD’, null)], ],

在config数组中。请参见下面的完整示例:database.PHP

’redis’ => [’cluster’ => false,’default’ => [ ’host’ => env(’REdis_HOST’, ’127.0.0.1’), ’password’ => env(’REdis_PASSWORD’, null), ’port’ => env(’REdis_PORT’, 6379), ’database’ => 3,],’options’ => [ ’parameters’ => [’password’ => env(’REdis_PASSWORD’, null)],], ],

在.env文件中:

REdis_HOST=127.0.0.1REdis_PASSWORD=mmdgreatREdis_PORT=6379解决方法

我收到错误 NOAUTH必需的身份验证 。我的laravel版本是5.3,我正在使用predis 1.1.1连接redis。

在etc / redis / redis.conf中,我有:

bind 127.0.0.1requirepass somepassword

在.env文件中

REDIS_HOST=127.0.0.1REDIS_PASSWORD=somepasswordREDIS_PORT=6379

在config / database.php中,我有:

’redis’ => [’cluster’ => false,’default’ => [ ’host’ => env(’REDIS_HOST’,’127.0.0.1’),’password’ => env(’REDIS_PASSWORD’,null),’port’ => env(’REDIS_PORT’,6379),’database’ => 0,],

我通过以下方式连接redis:

self::$_db = Redis::connection(’default’);

并像这样使用它:

self::$_db->pipeline(function ($pipe) use ($profile,$time,$type,$id) { $pipe->zadd(self::getProfileKey($profile,$type),$id); $pipe->zadd(self::getProfileKey($profile),$type . ’:’ . $id); $pipe->zadd(self::getModelKey($type,$id) . ’::favoritedBy’,$profile->profile_id);});

因此,当我注释掉requirepass并将密码发送为null时,它可以工作,但NOAUTH Authenticationrequired.在密码到位后却无法工作并引发错误。我需要根据项目要求输入密码。请帮忙。提前致谢。

相关文章: