|
|
|
Как я делал это...
1. При входе чела в систему, на сервере (за веб-пространством) создается файл вида: случайный_id > время_входа > ip_клиента с именем == случайному_id
2. Клиент при этом получает id и время в куки
3. При любом обращении страница: Читает куки, открывает нужный файл, сравнивает значения. Если хоть что-то не совпало - чистим куки, удаляем файл, возврашаем в начало. Если файла нет - просто чистим куки и возвращаем в начало.
4. При нажатии спец.кнопочки ("выход") производятся те же действия, что и в случае, если не совпало.
5. Если установлен флажок (в _macro.cfg), проверяется величина отличия atime файлов от текущего времени. Если больше значения флажка - удаляем файл.
Единственное ограничение - необходимы куки. Однако система не_очень_много_пользовательская, все пользователи - знакомые (лично или виртуально) - договорится о куках легко. Тем более, среди пользователей я пока не знаю ни одного "куконенавистника" ;-)
|