Как сказал Никф, время ожидания сеанса лучше всего обрабатывать на стороне сервера. Наличие файла cookie используется для определения местоположения сеанса, а не для реализации тайм-аута. Сессионные куки-файлы обычно используются для отслеживания состояния сеанса, а не тех, срок действия которых истек. Они сохраняются до тех пор, пока открыт браузер.
На стороне сервера при обработке запроса используется значение cookie (обычно длинная случайная, трудно угадываемая строка) для определения местоположения сеанса пользователя. Если сеанс отсутствует, он может ответить перенаправлением на страницу входа.
РЕДАКТИРОВАТЬ: В комментариях вы сказали, что используете goAhead - у меня возникают трудности с доступом к их вики, но, если предположить, что он близок к ASP Microsoft, см. Эту ссылку на asp-форуме для веб-мастеров пример того, как обрабатывать логин. Часть, которую нужно отметить на странице входа в систему:
session("UserID") = rs.Fields("usrName")
и часть, которая проверяет загрузку сессий на каждой странице, по-прежнему хороша:
if (session("UserID") = "") then
response.redirect("default.asp")
Это, как я описал в приведенных ниже заметках, определение времени ожидания со стороны сервера и предоставление фреймворку (goAhead в вашем случае) всей магии и времени ожидания при неактивности.