Stange проблема с сессией - PullRequest
       6

Stange проблема с сессией

1 голос
/ 20 января 2011

У меня что-то странное происходит с нашим состоянием сеанса. Наше приложение ASP.NET C # имеет время ожидания сеанса 10 минут, но, похоже, оно теряет состояние сеанса при перенаправлении между страницами.

Итак, мы устанавливаем значение сеанса и перенаправляем на следующий шаг,

        Session["temp"] = "somevalue";
        Response.Redirect("page2.aspx");

В верхней части страницы 2 мы проверяем значение сеанса и, если его там нет, перенаправляем обратно в начало (код ниже - первый на Page_Load):

        if (Session["temp"] == null)
        {
            Response.Redirect("start.aspx");
        }

Проблема в том, что он продолжает выполнять это перенаправление, даже если время сеанса не должно было превышаться.

Я проверил файл конфигурации, и у него есть машинный ключ, поскольку мне сообщили, что это может иногда вызывать проблемы, если его там нет.

Есть ли что-то еще, что может заставить нас потерять сессию?

Ответы [ 3 ]

1 голос
/ 20 января 2011

В зависимости от конфигурации вашего сеанса проблемы с файлами cookie могут привести к потере сеанса. Как может переключение доменов / переключение между http и https.

И, кроме того, если вы подключаетесь через мобильное соединение, с вашими печеньями могут происходить всякие ужасные вещи ...

1 голос
/ 20 января 2011

Отключенные Куки могут быть проблемой.Вы также можете создать новое приложение (по умолчанию web.config без каких-либо изменений) на одной странице и протестировать его.Это скажет вам, является ли проблема специфической для приложения или для сервера.

0 голосов
/ 20 января 2011

попробуйте добавить в раздел system.webServer -> modules в файле web.config следующие строки:

<remove name="Session" />
<add name="Session" type="System.Web.SessionState.SessionStateModule" />
...