세션 상태 서버에 세션 상태 요청을 할 수 없습니다.


122

현재 사이트에이 문제가 있습니다. 기본적으로 새 창이 팝업되는 특정 링크를 클릭 할 때만 발생합니다.
수신되는 오류 메시지는 다음과 같습니다.

세션 상태 서버에 세션 상태 요청을 할 수 없습니다.
ASP.NET 상태 서비스가 시작되고 클라이언트 및 서버 포트가 동일한 지 확인하십시오.
서버가 원격 컴퓨터에있는 경우 HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection의 값을 확인하여 원격 요청을 수락하는지 확인하십시오.
서버가 로컬 컴퓨터에 있고 앞에서 언급 한 레지스트리 값이 없거나 0으로 설정된 경우 상태 서버 연결 문자열은 서버 이름으로 'localhost'또는 '127.0.0.1'을 사용해야합니다.

타겟 사이트 :
Void MakeRequest (StateProtocolVerb, System.String, StateProtocolExclusive, Int32, Int32, Int32, Byte [], Int32, Int32, SessionNDMakeRequestResults ByRef)

이것은 sessionstate 태그를 포함하는 webconfig입니다.

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

ASP.NET 상태 서비스를 확인했으며 현재 시작되어 자동으로 설정되어 있습니다.

오류 메시지에 명시된 레지스트리를 1로 설정했지만 여전히 작동하지 않습니다.

답변:


305
  1. 시작 –> 관리 도구 –> 서비스
  2. ASP.NET State Service를 마우스 오른쪽 단추로 클릭 하고 "시작"을 클릭합니다.

또한 재부팅 후에 작동하도록 서비스를 자동으로 설정할 수 있습니다.


2
때로는 ASP.NET State Service를 몇 번 다시 시작한 후에 만 ​​작동한다는 것을 알았습니다!
Matthew Lock

2
나를위한 매력처럼
Arun

1
정확한 이름은 aspnet_state입니다.
AmiNadimi

1
당신의 나의 영웅은 .. 오랫동안 그것을 찾고있었습니다.
G43beli

1
당신은 ... 모두 이동 시간 저를 저장 한 ... 그리고 전년 동기 대비는 ...이 쉬운 솔루션으로 정말 .. 감사 도착
로저 테요에게

26

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection을 1로 변경해야하는 경우 매개 변수 를 변경 한 후 ASP.net 상태 서비스 를 다시 시작해야 합니다 .


@hikkenmikke HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ aspnet_state \ Parameters \ AllowRemoteConnection
Pomster

8

다음 사항을 확인하십시오.

stateConnectionString="tcpip=server:port"

맞다. 또한 기본 포트 ( 42424)를 사용할 수 있고 시스템에 시스템 firewall의 포트를 차단하는 포트가 없는지 확인하십시오.


1
동일한 문제가 있습니다. 세션 상태 서비스가 올바르게 실행되고 있는지 확인했지만 여전히 동일한 메시지가 나타납니다. 내 web.config 설정은 다음과 같습니다. <sessionState mode = "StateServer"stateConnectionString = "tcpip = 127.0.0.1 : 42424"sqlConnectionString = "data source = 127.0.0.1; Trusted_Connection = yes"cookieless = "false"timeout = "30" />
lstanczyk 2011-06-20

5

Windows 실행 창의 실행 패널에 Services.msc를 입력합니다. 시스템의 모든 Windows 서비스가 나열됩니다. 이제 이미지에 표시된대로 Asp .net State 서비스 를 시작해야합니다 .여기에 이미지 설명 입력

문제가 해결됩니다.


Windows Update로 인해 다시 시작한 후이 오류가 발생했습니다. 나는이 단계를 따랐고 효과가 있었다. 감사합니다.
Mauricio Arias Olave

4

내 고객 중 한 명이 같은 문제에 직면했습니다. 이 문제를 해결하기 위해 다음 단계를 수행합니다.

 (1) Open Run. 

 (2) Type Services.msc

 (3) Select ASP.NET State Service

 (4) Right Click and Start it.

2

확인해야 할 또 다른 사항은 포트 42424를 차단할 수 있으므로 Windows 방화벽을 활성화했는지 여부입니다.


2

일부 개발자는 비표준 구성 파일 (예 : web.config가 아님) 또는 텍스트 파일과 같이 예상치 못한 위치에서 IIS 외부의 서버의 개인 IP를 어떤 이유로 정의 할 것이라는 것을 발견했습니다. 이로 인해 서비스가 시작되거나 포트가 차단되지 않고 등록 키가 올바른 경우에도 내부 작업이 실패 할 수 있습니다.

특히 Kaseya는 VSA 서버의 루트 IIS 디렉터리에 serveripinternal.txt라는 파일을 저장합니다. 자신의 Kaseya 인스턴스를 실행하는 누군가가 서버의 내부 IP를 변경했을 때 오류 텍스트를 보았습니다. 서버에 연결할 수 있고 IIS가 응답하고 로그인 페이지가 표시되지만 인용 된 메시지와 함께 로그인이 실패합니다.



0

나는 최근에이 문제를 만났지만 제안 된 솔루션 중 어느 것도 해결하지 못했습니다. 문제는 세션에 저장된 데이터 세트를 과도하게 사용하는 것으로 밝혀졌습니다. 세션 크기가 10 배 증가하는 코드에 결함이 있습니다.

msdn 블로그에 이것에 대해 이야기하는 기사가 있습니다. http://blogs.msdn.com/b/johan/archive/2006/11/20/sessionstate-performance.aspx

라이브 사이트에서 세션 데이터의 크기를 측정하기 위해 사용자 지정 추적 메시지를 작성하는 기능을 사용했습니다.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.