【发布时间】:2016-08-24 20:20:41
【问题描述】:
我有一个中间件组定义为:
Route::group(['middleware' => 'auth'], function () {
Route::get('home', 'Home@Redirect');
Route::get('create','Create@Redirect');
Route::get('settings', 'Settings@Redirect');
);
当有人注销时,我将他们重定向到登录页面,然后调用 Auth::Logout() 工作正常,因为他们无法再浏览该站点。
问题是,当您退格浏览器历史记录时,可以向后浏览该站点,但如果他们单击链接尝试浏览该站点,则会被踢出。
一个例子是,我在主页上,然后我退出。我单击退格键并返回主页。然后,我尝试单击主页上的一个链接,该链接要求我进行身份验证,但我被踢出...但我不应该能够返回到我的历史记录以返回主页。
如果不清楚,我可以进一步详细说明或证明更多代码。我在 Laravel 5.0
【问题讨论】:
-
您可以通过设置缓存控制标头来解决此问题,通常来自某些中间件,您可以调用:
$response->headers->set('Cache-Control', 'no-cache, no-store, max-age=0, must-revalidate', true);
标签: php laravel authentication middleware browser-history