Ошибка состояния сеанса ASP.NET только в документе по умолчанию
Вопрос
У меня есть сайт, на котором при доступе через site.com/default.aspx все в порядке, однако при доступе через site.com/ я получаю следующую ошибку сеанса:
«Состояние сеанса можно использовать только в том случае, если для параметра EnableSessionState установлено значение true либо в файле конфигурации, либо в директиве Page.Также убедитесь, что System.Web.SessionStateModule или пользовательский модуль состояния сеанса включен в раздел \\ конфигурации приложения».
Я подтвердил, что default.aspx является документом по умолчанию с наивысшим приоритетом и что это загружаемая страница.Однако почему эта ошибка сеанса возникает только при доступе через документ по умолчанию?
Сервер 2008 R2 и IIS 7.5.
Решение
Отвечаю здесь на свой вопрос.Другим симптомом было то, что Page.User всегда имел значение null.Я нашел сообщение на SO о чем-то подобном
Модуль UrlRewriting.Net + IIS7 равно Page.User == null?
и хотя мы не используем модуль urlrewriting, добавление
runAllManagedModulesForAllRequests="true"
в раздел модулей в файле web.config.Надеюсь, когда-нибудь это поможет кому-то еще!