IIS генерирует тот же Session.SessionID - PullRequest
2 голосов
/ 03 мая 2011

Я развернул два веб-приложения на моем IIS7.

Проблема в том, что IIS генерирует один и тот же Session.SessionID, если я запрашиваю оба приложения, используя один и тот же браузер (разные вкладки).

Это вызывает некоторую проблему с аутентификацией пользователя ASP.Net, она частично перекрывает друг друга, и флаг «User.Identity.IsAuthenticated» возвращает false, когда пользователь входит на другой сайт.Он работает нормально, пока пользователь работает на одном из сайтов.

Пожалуйста, помогите мне, кажется, я не могу найти причину этого, я имею в виду, что сессия специфична для приложения, так почему sessionID из одного вебПриложение конфликтует с другим.

Спасибо

Ответы [ 3 ]

3 голосов
/ 03 мая 2011

Они работают в одном и том же пуле приложений . Просто отдельные пулы приложений.


Проблема в том, что ваш браузер обрабатывает эти приложения одинаково. Сеанс в ASP.NET реализован сессионным файлом cookie . Они должны иметь разные имена веб-сайтов , чтобы они не разделяли один и тот же сеанс.


UPDATE

Так работает сессионный cookie.

Но одним из решений является доступ к ним как mysite.com/1 и mysite.com/2. То, что я считаю, также должно работать.

0 голосов
/ 03 мая 2011

Каждое приложение выполняется в отдельном приложении IIS?Если они есть, то сеанс будет отдельным, так как Сеанс находится в области AppDomain.Если они находятся в одном и том же приложении IIS, они загружаются в один и тот же домен приложения и будут использовать общий сеанс.

В одном сеансе браузера (независимо от использования вкладок) будет отправлен один и тот же файл cookie сеанса.

0 голосов
/ 03 мая 2011

Проверяли ли вы пулы приложений, если вы хотите изолировать веб-приложение, вы должны определить другие пулы приложений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...