Не удалось выполнить запрос состояния сеанса на сервер состояния сеанса

Наш сайт в настоящее время сталкивается с этой проблемой. В основном это происходит только тогда, когда мы нажимаем какие-то конкретные ссылки, где оно всплывает в новом окне.
Это сообщение об ошибке, которое мы получаем:

Невозможно выполнить запрос состояния сеанса на сервер состояния сеанса.
Убедитесь, что запущена служба состояния ASP.NET и что порты клиента и сервера совпадают.
Если сервер находится на удаленный компьютер, убедитесь, что он принимает удаленные запросы проверяя значение HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection.
Если сервер находится на локальном компьютере, и если указанное значение реестра не существует или установлено в 0, тогда состояние строка подключения к серверу должна использовать либо" localhost ", либо" 127.0.0.1 ", как имя сервера.

целевой сайт:
Пустота MakeRequest (StateProtocolVerb, System.String, StateProtocolExclusive, Int32, Int32, Int32, Byte [], Int32, Int32, SessionNDMakeRequestResults ByRef)

это webconfig, содержащий тег sessionstate:

<sessionState mode="StateServer" timeout="45" />

Я проверяю государственную службу ASP.NET, и она в настоящее время запущена и настроена на автоматический

Я установил реестр, указанный в сообщении об ошибке, в 1, но все еще не работает.

Ответ 1

  1. Пуск–> Администрирование → Услуги
  2. Щелкните правой кнопкой мыши службу состояний ASP.NET и нажмите "Пуск".

Кроме того, вы можете настроить службу на автоматическую, чтобы она работала после перезагрузки

Ответ 2

Если вам нужно изменить HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection на 1, запомните перезапустите службу ASP.net после изменения параметр.

Ответ 3

Убедитесь, что:

stateConnectionString="tcpip=server:port"

является правильным. Также проверьте, доступен ли порт по умолчанию (42424), и ваша система не имеет firewall, которая блокирует порт в вашей системе.

Ответ 4

Введите Services.msc в панели запуска окна запуска Windows. Он отобразит все службы Windows в нашей системе. Теперь нам нужно запустить Asp.net State service как показано на изображении. введите описание изображения здесь

Ваша проблема будет решена.

Ответ 5

Еще одна вещь, которую нужно проверить, - включить ли брандмауэр Windows, поскольку это может блокировать порт 42424.

Ответ 6

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

Касея, в частности, размещает файл с именем serveripinternal.txt в корневой директории IIS сервера VSA. Я видел текст вашей ошибки, когда кто-то, запускающий собственный экземпляр Kaseya, изменил внутренний IP-адрес сервера. Сервер будет доступен, IIS ответит, и страница входа в систему появится, но логин будет провален с указанным сообщением.

Ответ 7

У меня была такая же проблема, когда некоторая установка ASP.NET была повреждена. В этом случае они предлагают запустить aspnet_regiis -i -enable

Ответ 8

Недавно я столкнулся с этой проблемой, и ни одно из предложенных решений не исправило ее. Проблема оказалась чрезмерным использованием наборов данных, хранящихся в сеансе. В коде был недостаток, который приводит к увеличению размера сеанса 10x.

В блоге msdn есть статья, в которой также говорится об этом. http://blogs.msdn.com/b/johan/archive/2006/11/20/sessionstate-performance.aspx

Я использовал функцию для записи пользовательских сообщений трассировки для измерения размера данных сеанса на реальном сайте.

Ответ 9

funcionou, muito obrigado Спасибо