2014-11-10 5 views
2

Laravel에서 로그 아웃 할 때 세션을 종료하는 데 문제가 있습니다. 내 로그 아웃 방식에서 수행하는 작업은Laravel - 로그 아웃 후 돌아 가기

Auth::logout(); 
Session::flush(); 

return View::make(..); 

그래서 내 문제는 무엇입니까? 로그 아웃 한 후 브라우저에서 "뒤로"를 클릭하면 로그인을 요구하지 않고 원래 있던 페이지로 돌아옵니다. 어떻게 세션을 종료 할 수 있습니까? 그러면 로그 아웃 후 다시 로그인하라는 메시지가 나타납니다.

+1

뒤로 버튼을 누른 후 페이지를 새로 고칠 때 어떻게됩니까? – ArjanSchouten

+0

http://laravel.com/docs/4.2/routing#route-filters 해당 페이지를 필터링하고 로그인 경로를 다시 지정해야합니다. –

+0

경로 필터를 사용하고 있습니까? – Jerodev

답변

1

이전 글에 이어 Laravel에는 사용자 인증 여부를 확인하고 로그인보기로 리디렉션하지 않는 'auth'라는 기본 필터가 있습니다.

Redirect::route('login'); 
+0

메신저 아직도 이것에 붙어있어, 나는 이유는 모르겠지만 내 문제는 여전히 지속됩니다. 나는 너와 똑같이했다. – Spurdow

+0

ahw는 지금 일하는 것을 잊었습니다. 모든 루트는 그룹 아래에 있으며, 모든 루트에 중첩 된 다른 그룹의 로그 아웃을 추가했습니다. – Spurdow

0

당신은 그것을 바꿀 수 경로에 필터를 추가 할 필요가 브라우저에서 botton은 단지 previeus 페이지에 대한 뷰를 만들지 만 서버에 대한 요청과 응답은 필요가 없습니다.

하지만이 작업 사용을 revok하려면 자바 스크립트와 같은 :

window.onbeforeunload = function() { return "You must login"; }; 
0

당신이 previeus를 클릭하면 ..

Auth::logout(); 
Session::flush(); 
Redirect::back(); 

나 :

당신은 단순히

Route::get('your route here', array('before' => 'auth', function() 
{ 
    return 'normal route behavior here' 
})); 
관련 문제