多个Laravel项目共享cache和session
两个或多个项目使用 Laravel 自带的 Session 机制把 SessionId 丢进 Redis 缓存 Key Value 数据库实现 Session 共享。
在Laravel中使用Redis之前,你需要通过Composer安装 predis/predis 包 (~1.0)。
创建两个 Laravel 5.1+ 项目
我们先分别创建两个laravel 5.1版本或以上的项目,分别叫A和B。 1.composer.json 中引入 predis
{
"require": {
"predis/predis": "1.1.*@dev"
}
}
2.更新 Composer 下载 Package
composer update
配置 Laravel 框架
1.配置 Laravel 框架下 .env 文件中 Session 驱动、缓存驱动、APP_KEY
APP_KEY=5FVu9DwcqK1R5mwQwLNJ6RgpQ4k9zj10
CACHE_DRIVER=redis //把缓存驱动也配置为 Redis 驱动
SESSION_DRIVER=redis
2.配置 Redis 服务器连接,来到 config\database.php 文件中配置数组 Key 为 Redis 的链接信息。
'redis' => [
'cluster' => false,
'default' => [
'host' => '127.0.0.1',
'port' => 6379,
'database' => 0,
],
],
3.配置 config\session.php 文件中 Key 为 domain 的 Value
'domain' => '.userdomain.com'; //你域名的根
参考:http://havenshen.com/articles/2015/12/laravel-5.1-used-session-share.html