Session Laravel 4-auth.basic筛选器会话不';t expire |如何使auth.basic会话过期
我有一个简单的管理区,我可以更新网站的一些方面。因为我是唯一一个访问它的人,所以我想到了使用Laravel4的Session Laravel 4-auth.basic筛选器会话不';t expire |如何使auth.basic会话过期,session,authentication,laravel,laravel-4,Session,Authentication,Laravel,Laravel 4,我有一个简单的管理区,我可以更新网站的一些方面。因为我是唯一一个访问它的人,所以我想到了使用Laravel4的auth.basic功能 我在我的routes.php文件上建立了一个组,该组将auth.basic过滤器同时添加到多个资源中: //routes.php // Password protected routes Route::group(['before' => 'auth.basic'], function () { Route::get('admin', ['as'
auth.basic
功能
我在我的routes.php
文件上建立了一个组,该组将auth.basic
过滤器同时添加到多个资源中:
//routes.php
// Password protected routes
Route::group(['before' => 'auth.basic'], function () {
Route::get('admin', ['as' => 'admin', 'uses' => 'AdminController@index']);
Route::resource('admin', 'AdminController');
Route::resource('users', 'UsersController');
Route::resource('pizzas', 'PizzasController');
});
这些路由是受保护的(正如它们应该保护的那样),当我第一次访问这些路由时,我必须填写一个弹出式身份验证表单
问题是:我认为,一旦我关闭浏览器,经过身份验证的会话就会过期。这并没有发生。即使浏览器关闭几个小时,它仍然“记得我”
- 我尝试在
上设置config/session.php
'life'=>0,
谢谢。要清除
auth.basic
会话,您也可以使用
Auth::logout();
或
请参阅API文档,转到
config/session.php
并设置'life'=>0
,然后重新启动Windows,修复了Firefox和IE9的问题,但在开发机器上没有修复Chrome的问题
然而,当从另一台计算机(而不是为页面提供服务的计算机)访问页面时,Chrome确实能按预期工作
考虑到没有人会从服务器上访问该站点(一旦它上线),我就接受它。我认为chrome会保存身份验证信息并发送任何请求。因此,它可以与会话分开 您可以使用chrome开发工具->网络选项卡进行检查。在任何请求中,chrome都会自动发送身份验证信息 你可以查一下 auth.basic.once
另外。您是关闭浏览器,还是只关闭选项卡?不知道您使用的是哪个操作系统,但mac操作系统将使用cmd-q完全关闭。I关闭浏览器。在Chrome、Firefox和IE9上试用过。他们有同样的行为。我在Windows7上。嗯,很奇怪。在这一点上我能想到的唯一的东西是饼干。我尝试停止并重新启动Apache,但没有成功,最后决定重新启动我的计算机。现在它可以在IE9和Firefox上运行,但是Chrome仍然会在打开/关闭周期之间保留我的凭证,即使在清除cookie和缓存之后也是如此。
Auth::clearUserDataFromStorage();