Как отключить сеанс при выходе с сайта, а не при обновлении?
Мне нужно, чтобы мое веб-приложение уничтожало / сбрасывало сеанс Zend_Auth, когда пользователь покидает сайт: например, когда пользователь уходит с сайта myapp.com, чтобы сказать google.com, когда он возвращается, сеанс больше не установлен?
Предпочтительно разрешить обновление без сброса (но не обязательно, так как первая часть должна применяться).
Кто-нибудь имел опыт сделать это раньше?
1 ответ
Решение
Перед выгрузкой страницы сделайте ajax-вызов, который очищает подлинность Zend Auth
<script language="JavaScript">
window.onbeforeunload = function(){
$.get('http://example.com/auth/clear');
}
</script>
ServerSide:
public function clearAction(){
Zend_Auth::getInstance()->clearIdentity();
}