Как увеличить время жизни сессии пользователя. Пробовал session_set_cookie_params ("time()+36000"), но данная функция работать не хочет. Может это я дундук?
Я понял, что этот параметр, изменяется в конфигурации php.ini. Но этот параметр будет действовать на всех пользователей, а нужно изберательно на каждого пользователя, у кого время жизни 0, а у кого-то 5 дн.
Чего заморачиваться? Хранить в куках секретное слово или строку или число сверять ее со строкой из БД или файла. Если совпадают - велкам, вы уже авторизовывались)))
а кто сказал что там XSS низзя использовать?))))))) И троян тоже вариант! ))) Ну если у него не шифрованные данные в куки идут....
По-моему редко кто шифрует данные в куки. Да и вообще, проще к нему домой прийти и под угрозой жизни выманить пароль.
Я никак не могу разобраться с временем жизни сессии. Читал документацию и ... совсем запутался. Ситуация такая: Есть ряд страничек, которые сохраняют временные параметры в сессии. Одним из таких параметров является массив, размер которого "очень велик" (скажем ~ 2Мб). Благодаря этому параметру у меня и появились вопросы про сессию и её время жизни. Насколько я понял, после закрытия браузера (на стороне клиента) его сессия (на стороне сервера) не "дохнет". Это и логично, ведь браузер же не будет сообщать всем серверам, с которыми он работал, что он завершает свою работу (более того, браузер клиента может завершить свою работу путем выдергивания вилки из разетки). Следовательно, сервер не способен определить завершение работы браузера. Это подтверждается тем, что, например, вчерашний файл сессии (временный файл) сегодня ещё хранится в папке временных файлов. Естественно повторный заход на сайт в новом браузере создает новый файл сессий. Получается, что эти файлы начинают засорять (уменьшать размер дискового пространства) на сервере. Этот факт меня и смущает. Также, я не понимаю связи между куками и сессиями. Поэтому, я хочу задать несколько вопросов. Не злитесь, пожайлуста, если эти вопросы будут смахивать на вопросы от блондинок. 1. Параметры сессии храняться на сервере или на стороне клиента в виде куков? 2. Параметр в php.ini session.cookie_lifetime показывает время жизни куков или сессий? 3. Параметр в php.ini session.gc_maxlifetime имеет такое описание: Переведите, пожайлуста, чайнику, что означает слово garbage. Заранее спасибо за подробные ответы на мой вопросы.
http://sergey89.net/blog/entry/session_files_cleanup суть в том, что PHP через некоторое время отметит данные, как устаревшие и с какой-то вероятностью запустит чистку мусора. session.cookie_lifetime - определяет время жизни кукисов, тоесть время, которые сессия быдет активна на стороне клиента. garbage - мусор. PS только там, помоему, немного не так, как я описал в блоге. Конкретно, я имею ввиду session.gc_maxlifetime.