简体   繁体   中英

How to destroy session when closing a browser in mac os?

I am working on php project. All I want to do that, when I close the browser so unset or destroy the session.

Here I also tried

ini_set('session.cookie_lifetime', 0) and session_set_cookie_params(0) before session_start();

It's working fine in Windows os but not in MAC os.

Thanks in Advance.

There are two parts to a session.

  1. The data stored on the server
  2. The cookie with the session id on the client

There is no reliable way to delete the data on the server when the browser is closed. Every sane session system just cleans up old data periodically (if there has been no sign of the associated browser for N minutes).

The cookie on the browser is usually sent without an expiry time, which means it will expire when the browser exits. This works reliably.

If whatever you have is doing what you want on Windows clients, then I would assume that you are talking about expiring the cookie.

This will happen on Mac as well as Windows. My best guess is that there is a problem with your testing. On Windows, applications generally exit when the last window is closed. On Mac, applications generally require that you explicitly quit them but remain open if you just close the last window.

To make sure the cookie expires you must expressly exit the browser (by picking Quit from the menu or right clicking and picking exit on the icon in the Dock).

There is no way for the server to detect when the last window has been closed and kill the session remotely.

it's working fine in Windows

That more or less means it works.

but not work in MAC os

This is probably a misunderstanding. You need to close all browser windows for the browser to destroy session cookies. Most likely you've only closed one of multiple windows, and at least one browser instance still exists (you can check that kind of thing with top in a terminal window).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM