phpcoder
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Кое-что осталось непонятным. Решил разобраться на примерах как что работает (Apache 1.3.34 + PHP 5.1.2 + WinXP SP2) php.ini: Код: session.save_path = c:\tmp session.cookie_lifetime = 0 session.gc_maxlifetime = 10 | 1. Открываем сессию, открываем в браузере код Код: <? session_start(); print(session_id()); // 7bb90404a9f707e298b84e7528b8aa4b ?> | Если я правильно понял, то, если более чем через 10 секунд обновить окно браузера должна открыться новая сессия? Этого не происходит! session_id() по прежнему 7bb90404a9f707e298b84e7528b8aa4b 2. Далее. Открываем сессию, открываем тотже код в браузере. Спустя 10 секунд, открываем скрипт в другом окне браузера. Открылась новая сессия. Но файл старой, также продолжает лежать в папке c:\tmp. Почему он не удалился? Непонятно. 3. Как безопаснее и рациональнее, скажем так, организовывать сеансы пользователей на сайте? - Хранить всю текущую информацию и время сеанса в базе, а в сессии только идентификатор, и по истечении отпущенного на "неактивность" времени убивать сессию самому? Что если, разрешенное время неактивности больше чем session.gc_maxlifetime? ИЛИ - Хранить все данные в сессии, управляя временем сессии так: Код: ini_set("session.gc_maxlifetime", "10"); ... |
| Всего записей: 194 | Зарегистр. 23-05-2004 | Отправлено: 13:57 08-11-2006 | Исправлено: phpcoder, 13:59 08-11-2006 |
|