无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查 HKE

方法一.Web.Config里面 把sessionState 的mode改为"InProc"(缺省模式)

在Web.Config里面:

如果是StateServer,即说明这个状态服务是采用远程服务器模式,需要设置服务器的字符串和密码等参数.

方法二.在windows服务中启用"ASP.NET State service"

无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET 状态服务)已启动,并且客户端端口与服务器端口相同。如果服务器位于远程计算机上,请检查 HKE_第1张图片

Session模型简介

  Session是什么呢?简单来说就是服务器给客户端的一个编号。当一台WWW服务器运行时,可能有若干个用户浏览正在运正在这台服务器上的网站。当每个用户首次与这台WWW服务器建立连接时,他就与这个服务器建立了一个Session,同时服务器会自动为其分配一个SessionID,用以标识这个用户的唯一身份。这个SessionID是由WWW服务器随机产生的一个由24个字符组成的字符串,我们会在下面的实验中见到它的实际样子。

  这个唯一的SessionID是有很大的实际意义的。当一个用户提交了表单时,浏览器会将用户的SessionID自动附加在HTTP头信息中,(这是浏览器的自动功能,用户不会察觉到),当服务器处理完这个表单后,将结果返回给SessionID所对应的用户。试想,如果没有SessionID,当有两个用户同时进行注册时,服务器怎样才能知道到底是哪个用户提交了哪个表单呢。

     Web.config文件中的Session配置信息
  打开某个应用程序的配置文件Web.config后,我们会发现以下这段:

        mode="InProc"
  stateConnectionString="tcpip=127.0.0.1:42424"
  sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
  cookieless="false"
  timeout="20"
     />

   其中mode 设置将Session信息存储到哪里,Off 设置为不使用Session功能;InProc 设置为将Session存储在进程内,就是ASP中的存储方式,这是默认值;StateServer 设置为将Session存储在独立的状态服务中;SQLServer 设置将Session存储在SQL Server中.

原文链接:无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET - gudi - 博客园

 

你可能感兴趣的:(服务器,asp.net,运维)