Столкнулся вот с какой проблемой.. есть чат на сокетах.. и принимаем и отправляем сообщения через сокеты.. что бы общаться в чате пользователь должен быть авторизирован на странице.. авторизация через сессии делается.. но через некоторое время сессия умирает... я так понимаю потому что считается что нет активности.. хотя сокет соединение остается открытым.. каждые 5 секунд по таймеру отправляется служебное сообщение через сокеты.. как лучше выйти из этой ситуации? 1. Увеличить время жизни сессии? 2. Поставить ajax таймер и каждые 5-10 минут дергать наш сервер что бы не было впечатления неактивности))
@Алекс8 а ты как-то авторизуешь пользователя на работу с сокетами? Там есть какой-то токен или что? --- Добавлено --- П.С. В любом случае, ты бы мог помимо сокетов делать веб-запрос раз в 10 мин, скажем, который поддерживал бы жизнь в сессии. Ну какой-нибудь фрейм или картинку с заголовком Refresh... Но мне кажется, это хак
по сути только проверяю ID сессии и все.. 1. Чел вводит имя для чата и нажимает ВХОД 2. На сервере создается запись в БД с его именем, ИД сессии и ИД чата.. 3. От попадает на страницу чата - открывается соединение, вместе с открытием соединения отсылаются ИД чата, ИД пользователя в базе, ИД сессии, имя пользователя)) 4. Срабатывает событие onConnect в этот момент я соединение записываю в массив + достаю из базы запись пользователя по условию всех его данных которые отправлены на сервер в гет параметре.. если совпадает - тогда продолжаем работу, слушаем сокет.. если нет - то разрываю соединение.. 5. Каждый раз когда пользователь что то отправляет на сокет - отсылается ИД сессии и ИД пользователя.. и сверяется так.. ПЫСЫ да.. по сути самое простое решение это тайме и аяксом дергать сервер.. но я думал может есть что то кошерное для этого случая))