2016-06-08 132 views
2

我有一个Laravel身份验证问题,我已经提出了一个关于它的问题here。在考虑了多个可能错误的事情之后,我检查了会话是否有问题。没有会话持久性Laravel

\Session::set('variableName', 1); 
\Session::save(); 
var_dump(\Session::get('variableName')); 

如果我执行一个HTTP请求上面的代码,得到的回报价值,但如果我尝试\会议::它返回null不同的HTTP请求得到(“VARIABLENAME”)。

我的配置/ sessions.php:

return [ 

    'driver' => env('SESSION_DRIVER', 'file'), 

    'lifetime' => 120, 

    'expire_on_close' => false, 

    'encrypt' => false, 

    'files' => storage_path('framework/sessions'), 

    'connection' => null, 

    'table' => 'sessions', 

    'lottery' => [2, 100], 

    'cookie' => 'laravel_session', 

    'path' => '/', 

    'domain' => null, 

    'secure' => false, 

]; 

有存储/框架/会话创建会话文件。

+0

当你说“不同的HTTP请求”时,你究竟是什么意思?有什么理由为什么应该创建一个新的会话?例如,如果您在隐身模式下打开新的Chrome标签,则会获得新的会话。 –

+0

不,不应创建新的会话。通过不同的HTTP请求,我的意思是去一个不同的URL并在那里检索会话。 –

+1

明白了。什么是会话驱动程序?根据https://laravel.com/docs/5.2/session#introduction,如果它是'array':'会话存储在一个简单的PHP数组中,并且不会在请求中持久化。 –

回答

0

按照docs,你需要确保你使用的不是array为您的会话驱动程序,因为:

阵列会话存储在一个简单的PHP数组并不会跨请求持久化。