Вопрос

У меня есть приложение ASP.NET 2.0.Страница входа в систему дважды перенаправляется при успешном входе в систему.Это нормально работает на всех тестовых средах и производственных серверах, кроме одного.С помощью Fiddler мы можем видеть, что логин перенаправляется на вторую страницу, а она - на третью.При переходе на третью страницу файл cookie аутентификации теряется, и страница перенаправляется обратно на логин.Как уже упоминалось, это происходит только на одном производственном сервере с IE7.Это работает нормально, если мы попробуем IE7 с самого сервера.Сбой происходит только с других клиентских компьютеров.Это работает отлично, если я просто попробую то же самое из FireFox.Я ясно вижу из fiddler, что в этом случае файл cookie не теряется.

Есть какие-нибудь идеи?

Это было полезно?

Решение

Вы устанавливаете файл cookie с заданным доменным именем?Содержит ли ваш URL-адрес доменное имя при просмотре?

Файлы cookie "localhost" на самом деле не работают так, как файлы cookie для домена, и часто могут исчезнуть.

HttpCookie содержит параметр домена для установки.

Другие советы

Это длинный снимок, но есть ли в имени сервера имя подчеркивания? Некоторое время назад произошла ошибка IE, из-за которой не удалось сохранить файлы cookie с именем сервера / URL-адреса, в котором было подчеркивание, поэтому, если бы я получил доступ к серверу с помощью http: // имя_сервера , я не смог сохранить cookie, но получил к нему доступ через http: // intranetdnsalias будет работать просто отлично.

Это звучит как проблема конфигурации IIS. Вы пытались воссоздать веб-сайт на этом сервере с настройками по умолчанию?

Даты совпадают? например 10.09.2008 == 09.10.2008 если локаль не та. Так что если вы устанавливаете конкретный срок действия, он может интерпретироваться как en-US, но вам нужен en-NZ или что-то в этом роде.

Или вы можете установить ее в качестве даты UTC, но, например, компьютер имеет UTC + 8, поэтому срок его действия быстро истекает?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top