Laravel 使用 Redis 作为 session 驱动

安装Redis

composer require predis/predis

设置Redis连接

config/database.php

'redis' => [

        'client' => 'predis',

        'default' => [
            'host' => env('REDIS_HOST', '127.0.0.1'),
            'password' => env('REDIS_PASSWORD', null),
            'port' => env('REDIS_PORT', 6379),
            'database' => 0,
        ],
        'redis-session' => [
            'host' => env('REDIS_HOST', '127.0.0.1'),
            'password' => env('REDIS_PASSWORD', null),
            'port' => env('REDIS_PORT', 6379),
            'database' => 0,
        ],

    ],

设置session驱动器

config/session.php

//session 驱动方式为 redis
 'driver' => env('SESSION_DRIVER', 'redis'),
//设置redis驱动器的连接配置,即:config/database.php中redis数组中的配置信息
 'connection' => 'redis-session',

修改.env文件

SESSION_DRIVER=redis

OK。

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 11

session如何设置redis的集群呢?

2年前 评论

这是单纯是用redis集群 session 如果是集群配置会报 ‘host’ 下标不存在 好像session没有获取到redis的集群配置

2年前 评论

@duohekaishui 那你在集群配置里新增一项session 对应的配置呢?

2年前 评论

没有用 他还是会读取session里面配置

2年前 评论

@duohekaishui session 里面connection配置项换成你集群里的试下

2年前 评论

@duohekaishui 你可以直接用redis集群的地址,不用集群的配置项;不能满足你的需求么?

2年前 评论

就是不知道这个session怎么配置redis的集群 有点纠结 看源码吧 还是....

2年前 评论

需要把session配置放到redis集群配置里面 外部不能有session的配置 laravel会先获取clusters外面的单利session配置 判断没有才会获取clusters里面的集群配置

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!