Я запускаю веб-сайт с использованием ASP.NET 2.0. Время от времени (10+ раз в день для 100+ пользователей в день) я получаю эту ошибку: проверка подлинности форм не удалась - срок действия предоставленного билета истек.
Вот мой фрагмент web.config:
<authentication mode = "Forms">
<forms name = ".CLLSAUTH" loginUrl = "login.aspx" protection = "All" path = "/" timeout = "60" />
</authentication>
Я просмотрел несколько решений, кто-то упомянул тайм-аут сеанса, но в моей конфигурации это также 60 минут. Еще две вещи: у меня нет веб-фермы, и приложение не перерабатывается примерно в то время, когда возникает ошибка.
Какие-нибудь подсказки?
почему это было закрыто как не по теме? Это вопрос, связанный с программированием.
@junto. Гм. Я не помню. Я не оставил записки в то время (почти 2 года назад), я полагаю, что могу снова открыть.
@edosoft, это определенно вопрос по теме. Думаю, его надо открывать заново.
@Brett Ok номинирован на повторное открытие.





Я не уверен, в чем ваш вопрос ... В этом случае, когда пользователь открывает браузер более часа, время ожидания cookie аутентификации истекает. В следующий раз они отправят запрос на сервер БАМ.
Попробуйте добавить slidingExpiration = "true" в элемент формы.
Таким образом, тайм-аут перезапускается каждый раз, когда пользователь обращается к серверу.
Возможно, это также связано с тем, что IIS переработал ваш рабочий процесс. Вам нужно будет проверить свои журналы, чтобы узнать, произошло ли это до того, как кто-то вызвал эту ошибку.
Если ваше приложение запущено на разных серверах, может быть проблема с тем, что машинный ключ в файле cookie проверки подлинности форм был отклонен, поскольку он был создан на другом сервере. Но из своего вопроса не похоже, что вы работаете на веб-ферме.
У меня вопрос, как предотвратить появление этой ошибки. И, как выяснилось, я не использую ни веб-ферму, ни переработку рабочих процессов IIS. Я попробую ваше предложение SlidingExpiration. Спасибо.
Это контролируется перезапуском пула приложений, тайм-аутом сеанса и тайм-аутом аутентификации.