如何配置laravel使用phpredis?

vbkedwbf  于 2021-06-09  发布在  Redis
关注(0)|答案(1)|浏览(645)

PHP7.3
拉威尔5.8
到目前为止,我一直在使用predis作为我在laravel项目中的缓存。现在我想换成phpredis。我读到它非常简单(只是配置更改),但我有很多问题。我不知道从什么开始,所以我会把我知道的写下来。
我的主机提供商声称phpredis已启用。
下面的代码在控制器中执行(predis已设置)工作正常-我收到设置值。
$redis=new\redis();
$redis->connect('socket path',0);
$redis->set('test','testvalue');
print\u r($redis->get('test'));
但是,通过ssh执行的原始php文件中的相同代码返回“uncaught error:class'redis'not found in…”
让我们转到config/database.php中的更改。以下是我的配置:

'redis' => [
        'client' => env('REDIS_CLIENT', 'predis'/*'phpredis'*/),
        'cluster' => true,

        'options' => [
            'cluster' => env('REDIS_CLUSTER', 'predis'/*'redis'*/),
            'prefix' => Str::slug(env('APP_NAME'), '_').'_',
            'parameters' => ['password' => env('REDIS_PASSWORD', null)],
        ],

        'default' => [
            'scheme' => 'unix',
            'path' => env('REDIS_HOST'),
            'host' => env('REDIS_HOST'),
            'password' => env('REDIS_PASSWORD'),
            'port' => env('REDIS_PORT'),
            'database' => env('REDIS_CACHE_DB', 0)
        ],

        (...) // other
        ],

当我在评论中更改这些值时,我的网站只显示一个空白页—邮箱中有任何错误。
此外,当我运行例如“php73 artisanconfig:clear在ssh中,console返回
请删除或重命名“app”配置文件中的redis facade别名,以避免与php redis扩展冲突。
当我将config/app.php中的别名从“redis”更改为“redismanager”并重试时,它返回
未捕获错误:在/path/vendor/laravel/framework/src/illuminate/redis/connectors/phpredisconnector中找不到类“redis”。php:70.
发生什么事?如何设置laravel的配置以使用phpredis?也许是我的主机提供商的问题?提前谢谢你的建议。
如果我错过了一些重要的代码,给我一个标志-我会添加它。

quhf5bfb

quhf5bfb1#

默认情况下,phpredis库不会安装在共享宿主环境中,并且默认情况下通常不是php安装的一部分。您必须要求您的主机在共享主机平台中安装这些库。

相关问题