91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

laravel5.6與thinkphp3.2使用redis共享session的示例分析

發布時間:2021-06-28 11:07:23 來源:億速云 閱讀:214 作者:小新 欄目:編程語言

這篇文章主要介紹laravel5.6與thinkphp3.2使用redis共享session的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

在實際的項目中,歷史項目使用thinkphp3.2開發,現在需要更新功能,更新功能的部分,擬使用laravel5.6進行開發。

問題描述

其中需要解決幾個關鍵問題,其中之一便是用戶認證的問題。即在系統1只登錄后,系統2中自動識別其登錄信息。即本質需要解決:laravel與thiniphp共享session的問題。

方案設計

session采用redis進行存儲。thinkphp與laravel共離訪問redis,根據相同的cookie,自動獲取存儲到redis中的認證用戶信息。

解決方案

thinkphp開啟redis支持

thinkphp3.2并不沒有集成session的redis支持,此時,我們使用php中的設置來開啟。在index.php中,我們加入以下兩行語句:

ini_set("session.save_handler", "redis");
ini_set("session.save_path", "tcp://redis:6379");
也可以將其加入到config.php配置文件中

此時, thinkphp在進行session存儲時,將以PHPREDIS_SESSION做為前綴進行存儲。

laravel開啟redis

laravel開啟redis的方法相對來講稍微復雜一些。具體信息,需要參考官方文檔使用composer來安裝Predis并進行相關配置。

laravel獲取thinkphp的session

由于laravel完全棄用了PHP的內置session。所以我們是沒有辦法能過$_SESSION來獲取到任何信息的(你甚至會得一個變量未定義的錯誤)。由于laravel的cookie進行了加密處理。所以,我們也不能用laravel自帶的cookie來獲取cookie信息。

具體實現的思路為:
1 獲取原生cookie。
2 接拼PHPREDIS_SESSION組成key
3 使用redis直接獲取key中存的值

...
use Illuminate\Support\Facades\Redis;
...
    $cookie = $_COOKIE['PHPSESSID'];
    $session = Redis::get('PHPREDIS_SESSION:' . $cookie);

此$session即為thinkphp系統中的session值。

以上是“laravel5.6與thinkphp3.2使用redis共享session的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

太仓市| 出国| 醴陵市| 长治县| 顺昌县| 湖口县| 马尔康县| 道孚县| 澄江县| 华池县| 合作市| 民权县| 彭泽县| 沙湾县| 蓬莱市| 乌恰县| 嘉荫县| 凤山县| 新和县| 沈阳市| 深圳市| 长宁县| 黄大仙区| 五寨县| 昌乐县| 巨鹿县| 清流县| 县级市| 延长县| 彰化县| 庆城县| 临澧县| 南漳县| 浠水县| 天津市| 屏边| 云浮市| 新建县| 武山县| 稻城县| 新绛县|