2015-07-10 7 views
4

Моя проблема заключается в том, что я могу выйти из системы правильно после того, как я нажму ссылку на выход, но если я нажму кнопку «Назад» в браузере, все еще могу видеть содержимое страницы, которое на самом деле не должно быть что касается моего промежуточного программного обеспечения. ? Я прочитал я могу предотвратить это отключить кэширование, но не думаю, что это лучший способ сделать это, так как я могу сделать это в лучшую сторону МОЯ Выход ФункцияКак я запрещаю входную кнопку кнопки браузера после выхода из системы

public function logout() 
{ 
    Auth::logout(); 
    Session::flush(); 
    return redirect('login'); 
} 

My Route Is:

Route::get('logout','[email protected]'); 

Thanx заранее

+0

На самом деле то, что вы видите, кэшируется, попробуйте обновить страницу после того, как вы вернетесь с помощью кнопки «Назад», вы будете перенаправлены. –

+0

Да Но некоторые важные данные можно увидеть, когда нажата кнопка «Назад», поэтому я должен предотвратить этот случай. Спасибо за советы. – Diksha

+0

Я не думаю, что есть правильный способ сделать это, поскольку это проблема с клиентской стороной. Или это то, что я понимаю из вашего вопроса. –

ответ

10

Эта проблема с браузером. Браузер кэширует содержимое страницы и обслуживает этот кешированный контент пользователю, когда вы нажимаете кнопку «Назад».

Настроить мета-теги управления кешем на страницах, требующих входа пользователя. Таким образом вы сообщаете браузеру, чтобы он не кешировал его.

Например:

<meta http-equiv="cache-control" content="private, max-age=0, no-cache"> 
<meta http-equiv="pragma" content="no-cache"> 
<meta http-equiv="expires" content="0"> 
+0

Это решение кажется неработоспособным, кнопка «Назад браузера» по-прежнему перемещается на страницу панели мониторинга, а не на страницу входа в систему :( – RJParikh

+0

Включение этих в HEADERS ответа работает для меня. – Rimer

0

Используйте простой запрос AJAX на верхней части страницы (что-то вроде службы пинг), установить кэш ложные и поставить некоторые положение в нем, чтобы перенаправить посетителя для входа, если не идентифицирован ,

Итак, после выхода из системы, если вы попытаетесь вернуться, даже если главная страница будет кеширована браузером, она все равно попытается загрузить запрос AJAX на загрузку страницы. И поскольку аутентификация пользователя уже недействительна, она перенаправит пользователя на страницу входа.

0

Добавить этот код javascript, это предотвратит перенаправление.

history.pushState(null, null, document.URL); 
window.addEventListener('popstate', function() { 
    history.pushState(null, null, document.URL); 
});