Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.01.2011, 12:47
Аспирант
Отправить личное сообщение для prog90 Посмотреть профиль Найти все сообщения от prog90
 
Регистрация: 04.06.2009
Сообщений: 51

Вопрос про session.gc_maxlifetime
Подскажите, что значит опция конигурации session.gc_maxlifetime на сервере apache? Через сколько будет удален файл сессии, после последней отправки клиентом куки с номером сессии? Или через сколько она будет удалена, после создания, независимо от общения с клиентом?
Ответить с цитированием
  #2 (permalink)  
Старый 09.01.2011, 12:58
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Сообщение от prog90
session.gc_maxlifetime на сервере apache?
на apache нету такой опции

после последнего доступа к файлу сессии
Ответить с цитированием
  #3 (permalink)  
Старый 09.01.2011, 13:43
Аспирант
Отправить личное сообщение для prog90 Посмотреть профиль Найти все сообщения от prog90
 
Регистрация: 04.06.2009
Сообщений: 51

дада. интерпретатор php. оговорился
Ответить с цитированием
  #4 (permalink)  
Старый 09.01.2011, 13:50
Аспирант
Отправить личное сообщение для prog90 Посмотреть профиль Найти все сообщения от prog90
 
Регистрация: 04.06.2009
Сообщений: 51

А для кого эта опция выставляется? для всех и на все время? Например, если вызвать открыть сессию и вызвать ini_set, то для этой сессии опция изменится? или после окончания работы скрипта, опция опять восстановится?
Там где я пишу, она восстанавливается на 1440.
Ответить с цитированием
  #5 (permalink)  
Старый 09.01.2011, 17:30
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

вы справку пробовали читать?
там же русским английским по-белому написано, что время задается для конкретного хранилища
Ответить с цитированием
  #6 (permalink)  
Старый 09.01.2011, 21:21
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

prog90, давай ты начнешь с того, что обозначишь проблему
Ответить с цитированием
  #7 (permalink)  
Старый 09.01.2011, 22:24
Аспирант
Отправить личное сообщение для prog90 Посмотреть профиль Найти все сообщения от prog90
 
Регистрация: 04.06.2009
Сообщений: 51

А то что это написано в файле php.ini - из этого не понять к кому и как это принимается.
; After this number of seconds, stored data will be seen as 'garbage' and
; cleaned up by the garbage collection process.
session.gc_maxlifetime = 1440

Получается что для всех.

И что значит хранилище?

А проблема в том, что мне надо, чтобы при закрытии окна браузера на сервере уничтожалась сессия. Через событие onunload отправить на сервер сигнал не вроде не получится, потому что оно не работает во всех браузерах полностью.
Но еще наверно можно установить время жизни сессии при отсутствии обращения к ней, например, в течение 7 секунд. В чате окно обновляется каждые несколько секунд. Поэтому если закроют браузер или вкладку, то перестанут обращаться к скрипту.
Может быть есть еще вариант как это сделать.
Ответить с цитированием
  #8 (permalink)  
Старый 09.01.2011, 22:42
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

выставьте время жизни кукам в 0
при закрытии вкладки они будут удалены
Ответить с цитированием
  #9 (permalink)  
Старый 09.01.2011, 23:07
Аспирант
Отправить личное сообщение для prog90 Посмотреть профиль Найти все сообщения от prog90
 
Регистрация: 04.06.2009
Сообщений: 51

Проблема в том, что если браузер закрыт, и файл куки с сессией унитожен, а сессия на сервере остается, то когда тот же пользователь заходит заново, и ему выдается другая сессия, то получается, что в чате еще есть ктото с его логином и паролем. И ему приходится вывести ошибку - пользователь с таким логином уже в чате.
А если это не считать за ошибку, то тогда один пользователь сможет зайти два раза под своим логином. Или три. И например как мне кажется может поставить генератор, и зайти 1000 раз подряд, и испортить чат.
Ответить с цитированием
  #10 (permalink)  
Старый 09.01.2011, 23:12
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

что за бред?
ты разве для того чтобы определить кто в чате "On-line", перебираешь все файлы сессий, что ли?

нормальные люди on-line определяют так:
где-нибудь указывается список чатлан, и время последней активности.
те, которые были неактивны долго, либо нажали кнопку выхода, считаются неактивными.
сессии тут абсолютно не при чем.

если пользователь зайдет второй раз в чат, ему выдастся новая сессия, с информацией для него лично.
старая такая информация для него уже потеряна, если не сохранена в БД
со временем, старая сессия будет удалена сборщиком мусора
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос: И опять про offsetLeft... sigurd Общие вопросы Javascript 11 04.10.2010 14:06
Java - Здравствуйте, вопрос про написание js noobasik Оффтопик 16 28.07.2010 03:38
Вопрос про ООП, цепочки прототипов. Shaci Общие вопросы Javascript 5 27.01.2010 14:50
вопрос про <select> Krondor Общие вопросы Javascript 2 25.11.2009 17:04
Вопрос про отправку данных методом Post QQQ AJAX и COMET 1 15.07.2009 23:27