From 90c3a795dadf8cf473a70432180212c70c24ee15 Mon Sep 17 00:00:00 2001 From: neoteknic Date: Fri, 25 Mar 2022 15:07:24 +0100 Subject: [PATCH 1/4] Update PhpRedisConnector.php Allow to use username and password string for phpredis connection, instead of a password array. Fix laravel crash if different environement (ex: one server with ACL, one with just a password), have to edit database.php to use an array in password field. Now you can use username and password. --- src/Illuminate/Redis/Connectors/PhpRedisConnector.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Illuminate/Redis/Connectors/PhpRedisConnector.php b/src/Illuminate/Redis/Connectors/PhpRedisConnector.php index 62c4ed126287..9b02475e3ff8 100644 --- a/src/Illuminate/Redis/Connectors/PhpRedisConnector.php +++ b/src/Illuminate/Redis/Connectors/PhpRedisConnector.php @@ -83,7 +83,10 @@ protected function createClient(array $config) $this->establishConnection($client, $config); - if (! empty($config['password'])) { + if (! empty($config['username']) && is_string($config['password'])) { + $client->auth([$config['username'],$config['password']]); + } + elseif (! empty($config['password'])) { $client->auth($config['password']); } From d76e0488639abccd98930a667eda77b236fef065 Mon Sep 17 00:00:00 2001 From: neoteknic Date: Fri, 25 Mar 2022 15:10:10 +0100 Subject: [PATCH 2/4] Update PhpRedisConnector.php --- .../Redis/Connectors/PhpRedisConnector.php | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/Illuminate/Redis/Connectors/PhpRedisConnector.php b/src/Illuminate/Redis/Connectors/PhpRedisConnector.php index 9b02475e3ff8..a460e235ac0b 100644 --- a/src/Illuminate/Redis/Connectors/PhpRedisConnector.php +++ b/src/Illuminate/Redis/Connectors/PhpRedisConnector.php @@ -82,12 +82,14 @@ protected function createClient(array $config) } $this->establishConnection($client, $config); - - if (! empty($config['username']) && is_string($config['password'])) { - $client->auth([$config['username'],$config['password']]); - } - elseif (! empty($config['password'])) { - $client->auth($config['password']); + + if (! empty($config['password'])) { + if (! empty($config['username']) && is_string($config['password'])) { + $client->auth([$config['username'],$config['password']]); + } + else + $client->auth($config['password']); + } } if (isset($config['database'])) { From 9540cd7b195e5fd9dae922c677edfd70f8baa397 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Fri, 25 Mar 2022 10:30:41 -0500 Subject: [PATCH 3/4] formatting --- src/Illuminate/Redis/Connectors/PhpRedisConnector.php | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/Illuminate/Redis/Connectors/PhpRedisConnector.php b/src/Illuminate/Redis/Connectors/PhpRedisConnector.php index a460e235ac0b..06f319cec16c 100644 --- a/src/Illuminate/Redis/Connectors/PhpRedisConnector.php +++ b/src/Illuminate/Redis/Connectors/PhpRedisConnector.php @@ -84,10 +84,9 @@ protected function createClient(array $config) $this->establishConnection($client, $config); if (! empty($config['password'])) { - if (! empty($config['username']) && is_string($config['password'])) { - $client->auth([$config['username'],$config['password']]); - } - else + if (isset($config['username']) && is_string($config['password'])) { + $client->auth([$config['username'], $config['password']]); + } else { $client->auth($config['password']); } } From 949e9ea8b4b24987812d64e422c2227e081e2f2c Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Fri, 25 Mar 2022 10:32:54 -0500 Subject: [PATCH 4/4] remove whitespace --- src/Illuminate/Redis/Connectors/PhpRedisConnector.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Illuminate/Redis/Connectors/PhpRedisConnector.php b/src/Illuminate/Redis/Connectors/PhpRedisConnector.php index 06f319cec16c..e70be1019ef9 100644 --- a/src/Illuminate/Redis/Connectors/PhpRedisConnector.php +++ b/src/Illuminate/Redis/Connectors/PhpRedisConnector.php @@ -82,7 +82,7 @@ protected function createClient(array $config) } $this->establishConnection($client, $config); - + if (! empty($config['password'])) { if (isset($config['username']) && is_string($config['password'])) { $client->auth([$config['username'], $config['password']]);