日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

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

問題描述

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


方案設(shè)計

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


解決方案

thinkphp開啟redis支持

thinkphp3.2并不沒有集成session的redis支持,此時,我們使用php中的設(shè)置來開啟。在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的方法相對來講稍微復(fù)雜一些。具體信息,需要參考官方文檔使用composer來安裝Predis并進行相關(guān)配置。


laravel獲取thinkphp的session

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

具體實現(xiàn)的思路為:

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系統(tǒng)中的session值。

分享到:
標(biāo)簽:laravel5.6 thinkphp3.2 redis共享session
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定