今天把服务器上的网站拿到本本上运行,出错了。上网查到的一篇解决方法。 错误如下: 异常详细信息: System.Web.HttpException: 无法向会话状态服务器发出会话状态请求。请确保已启动 ASP.NET State service,并且客户端和服务器端口是相同的。如果服务器位于远程计算机上,请检查 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\aspnet_state\Parameters\AllowRemoteConnection 的值,确保服务器接受远程请求。 源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 原因分析: web.config中配置SessionState的mode为StateServer,但服务器没有开启改个服务。 解决方法: 1.Web.Config里面 把sessionState 的mode改为"InProc" ; 2.在服务中启用"ASP.NET State service" 这样是可以了,但没有理解为什么要这么做。后来在网上找了一上才知道真真的原因。 Session模型简介 Session是什么呢?简单来说就是服务器给客户端的一个编号。当一台WWW服务器运行时,可能有若干个用户浏览正在运正在这台服务器上的网站。当每个用户首次与这台WWW服务器建立连接时,他就与这个服务器建立了一个Session,同时服务器会自动为其分配一个SessionID,用以标识这个用户的唯一身份。这个SessionID是由WWW服务器随机产生的一个由24个字符组成的字符串,我们会在下面的实验中见到它的实际样子。 这个唯一的SessionID是有很大的实际意义的。当一个用户提交了表单时,浏览器会将用户的SessionID自动附加在HTTP头信息中,(这是浏览器的自动功能,用户不会察觉到),当服务器处理完这个表单后,将结果返回给SessionID所对应的用户。试想,如果没有SessionID,当有两个用户同时进行注册时,服务器怎样才能知道到底是哪个用户提交了哪个表单呢。当然,SessionID还有很多其他的作用,我们会在后面提及到。 除了SessionID,在每个Session中还包含很多其他信息。但是对于编写ASP或ASP.NET的程序与来说,最有用的还是可以通过访问ASP/ASP.NET的内置Session对象,为每个用户存储各自的信息。例如我们想了解一下访问我们网站的用户浏览了几个页面,我们可能在用户可能访问到每个的页面中加入: 通过以下这句话可以让用户得知自己浏览了几个页面: 可能有些有些读者会问:这个看似像是数组的Session(“..”)是哪里来的?需要我定义吗?实际上,这个Session对象是具有ASP解释能力的的WWW服务器的内建对象。也就是说ASP的系统中已经给你定义好了这个对象,你只需要使用就行了。其中Session(“..”)中的..就好像变量名称,Session(“..”)=$$中的$$就是变量的值了。你只需要写上句话,在这个用户的每个页面中都可以访问..变量中的值了。 其实ASP一共内建了7个对象,有Session、Application、Cookie、Response、Request、Server等。在其他的服务器端脚本语言如JSP、PHP等中也有其类似的对象,只是叫法或者使用方法上不太一样。 ASP Session的功能的缺陷 目前ASP的开发人员都正在使用Session这一强大的功能,但是在他们使用的过程中却发现了ASP Session有以下缺陷: 进程依赖性:ASP Session状态存于IIS的进程中,也就是inetinfo.exe这个程序。所以当inetinfo.exe进程崩溃时,这些信息也就丢失。另外,重起或者关闭IIS服务都会造成信息的丢失。 Session状态使用范围的局限性:刚一个用户从一个网站访问到另外一个网站时,这些Session信息并不会随之迁移过去。例如:新浪网站的WWW服务器可能不止一个,一个用户登录之后要去各个频道浏览,但是每个频道都在不同的服务器上,如果想在这些WWW服务器共享Session信息怎么办呢? Cookie的依赖性:实际上客户端的Session信息是存储与Cookie中的,如果客户端完全禁用掉了Cookie功能,他也就不能享受到了Session提供的功能了。 鉴于ASP Session的以上缺陷,微软的设计者们在设计开发 ASP.NET Session时进行了相应的改进,完全克服了以上缺陷,使得ASP.NET Session成为了一个更加强大的功能。 Web.config文件简介 有的ASP.NET程序员说:Web.config文件?我从来没有听说过啊,可是我写的程序不是也能很正常的运转吗?是的,你说得没错,没有Web.config文件程序是可以正常运行的。但是,如果你做了一个大型的网站,需要对整个网站做一些整体配置,例如整个网站的页面使用何种语言编写的、网站的安全认证模式、Session信息存储方式等,这时你就需要使用Web.config文件了。虽然Web.config文件中的某些选项是可以通过IIS配置的,但是如果在Web.config中也有相应的设置就会覆盖掉IIS中的配置。而且,Web.config文件的最大的便利之处就是可以在ASP.NET页面中通过调用System.web名字空间访问Web.config中的设置。 Web.config有两种,分别是服务器配置文件和Web应用程序配置文件,他们都名为Web.config。在这个配置文件中会保存当前IIS服务器中网页的使用哪种语言编写的、应用程序安全认证模式、Session信息存储方式的一系列信息。这些信息是使用XML语法保存的,如果想对其编辑,使用文本编辑器就行了。 其中服务器配置文件会对IIS服务器下所有的站点中的所有应用程序起作用。在.NET Framework 1.0中,服务器的Web.config文件是存在:\WinNT\Microsoft.NET\Framework\v1.0.3705中的。 而Web应用程序配置文件Web.config则保存在各个Web应用程序中。例如:当前网站的根目录\Inetpub\wwwroot,而当前的Web应用程序为MyApplication,则Web应用程序根目录就应为:\Inetpub\wwwroot\MyApplication。如果你的网站有且只有一个Web应用程序,一般说来应用程序的根目录就是\Inetpub\wwwroot。如果想添加一个Web应用程序,在IIS中添加一个具有应用程序起始点的虚拟目录就行了。这个目录下的文件及目录将被视为一个Web应用程序。但是,这样通过IIS添加Web应用程序是不会为你生成Web.config文件的。如果想创建一个带有Web.config文件的Web应用程序,需要使用Visual Studio.NET,新建一个Web应用程序项目。 Web应用程序的配置文件Web.config是可选的,可有可无。如果没有,每个Web应用程序会使用服务器的Web.config配置文件。如果有,则会覆盖服务器Web.config配置文件中相应的值。 在ASP.NET中,Web.config修改保存后会自动立刻成效,不用再像ASP中的配置文件修改后需要重新启动Web应用程序才能生效了。 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" /> 这一段就是配置应用程序是如何存储Session信息的了。我们以下的各种操作主要是针对这一段配置展开。让我们先看看这一段配置中所包含的内容的意思。sessionState节点的语法是这样的: ort" sqlConnectionString="sql connection string" stateNetworkTimeout="number of seconds" /> 必须有的属性是 属性 选项 描述 mode 设置将Session信息存储到哪里 Off 设置为不使用Session功能 InProc 设置为将Session存储在进程内,就是ASP中的存储方式,这是默认值。 StateServer 设置为将Session存储在独立的状态服务中。 SQLServer 设置将Session存储在SQL Server中。
发表评论
-
C#字符串处理,随机插入
2012-07-06 09:51 784string字符串是char的集合,而char是Unico ... -
常用正则表达式
2012-07-06 09:44 469src=\"(/uploadfiles/pic/ ... -
常用正则表达式
2012-07-06 09:37 531常用的js正则表达式验证2008年12月04日 星期四 下 ... -
3dmax导出插件-tiamo
2012-07-06 09:29 696新年第一贴,说说3d ... -
随滚动条移动的上下左右中层
2012-07-05 20:44 721随滚动条移动的层 - 5iuu.com .d ... -
第五课应用程序的组件
2012-07-03 13:42 565应用程序的组件 ... -
第五课应用程序的组件
2012-07-03 12:18 544应用程序的组件 ... -
[nginx] LEMP构建高性能WEB服务器(第二版) 还没有试验,今天准备
2012-07-02 10:14 716前言: 本文 ... -
Using Valgrind to Find Memory Leaks
2012-07-02 10:14 644document.write ("&q ... -
Oledbadapter使用感受
2012-07-02 10:14 611Style Definitions */ p.Ms ... -
Build Instructions for the QtWebKit build on Windows
2012-07-02 10:14 1282Build Instructions for the Q ... -
Android Դ
2012-07-02 09:42 551... -
Flex PieChart使用XML数据源以及如何将String XML转换成XML对象
2012-07-01 09:35 766以下实例是通过一个字符串的XML,先将其转换成Flex的X ... -
Server Push Flex4+LCDS3.1
2012-07-01 09:35 534(自己学习,做的小例子,记录一下) 使用flex.d ... -
flex LineChart 的demo
2012-07-01 09:35 577... -
[转载]每天学一点Flex(1):DataGrid组件分页
2012-07-01 09:35 500原文地址: http://blog.csdn.net/he ... -
由于应用程序配置不正确,程序未能启动”--原因及解决方法
2012-06-30 17:52 863由于应用程序配置不正确,程序未能启动"--原因及 ... -
SQL server用户Sa登录失败的解决方法
2012-06-30 17:52 995最近在学习C# ... -
ubuntu下adb调试android找不到设备的解决方法
2012-06-30 17:52 674最近在写一个播放rtsp的测试程式,这个需要真机上测试,结 ...
相关推荐
无法向会话状态服务器发出会话状态请求。请确保已启动 ASP.NET State service,并且客户端和服务器端口保持相同。 终极解决!1
异常详细信息: System.Web.HttpException: 无法向会话状态服务器发出会话状态请求。请确保已启动 ASP.NET State service,并且客户端和服务器端口是相同的。如果服务器位于远程计算机上,请检查 HKEY_LOCAL_MACHINE\...
PHP会话跟踪内容简介:PHP会话跟踪什么是会话控制会话跟踪技术实现简单的会话创建一个简单的会话的例子配置会话控制什么是会话控制™ 我们需要一种强有力的解决方案,为了使得网站可以跟踪客户端与服务器之间的交互...
这些请求是通过向服务器提供访问方法来处理的。 服务器将响应一个响应代码,指示客户端应该继续、方法成功或发生错误。 两种基本方法 GET 和 PUT 存储和检索与给定键关联的数据。 类型可以与每个键相关联。 无法...
会话表示用户在与该站点连接期间发送的所有请求,会话状态是用户在会话期间生成和使用的持久性数据的集合。每个会话的状态都彼此独立,而且在用户会话结束时就不复存在了。 会话状态与构成HTTP协议和规范的任何逻辑...
本文实例讲述了JS Ajax请求会话过期处理问题解决方法。分享给大家供大家参考,具体如下: 对于页面来说,处理session过期比较简单,一般只需在过滤器里面判断session用户是否存在,不存在则跳转页面到登陆页即可。 ...
文章目录什么是会话无状态会话有状态会话会话架构单Tomcat会话动静分离会话集群分布式系统会话Redis实现会话 什么是会话 会话Session代表的是客户端与服务器的一次交互过程,这个过程可以是连续也可以是时断时续的。...
作用:当WEB请求一个WEB页面时,它会向服务器发送一个HTTP请求消息。这个请求总是包含一些头信息,有时也包含一个消息体。WEB服务器接收请求,处理请求,并发出一个响应,传回指定的HTML代码 2、变量 使用PHP脚本...
编写一个客户端程序,一个服务器程序。服务器先开启,客户端登录,在登录时将自己在聊天是的监听端口发送给服务器,服务器保存该客户端的监听端口及ip地址。并在客户端弹出好友列表对话框,当另一客户也已上线后,在...
0058 指定的服务器无法执行所请求的操作。 0059 网络出现意外错误。 0060 远程适配器不兼容。 0061 打印机队列已满。 0062 服务器上没有存储等待打印的文件的空间。 0063 已经删除等候打印的...
1.4在FTP会话中,控制连接在整个用户会话期间一直处于打开状态,而数据连接则为每次文件传送请求重新打开一次。也就是说,在整个FTP会话过程中,控制连接是持久的,而数据连接是非持久的。 服务器配置与管理论文...
在大多数电子商务的应用系统或者需要进行用户身份认证的在线系统中,一个客户与服务器经常经过好几次的交互过程才能完成一笔交易或者是一个请求的完成。由于这几次交互过程是密切相关的,服务器在进行这些交互过程的...
选择服务器端会话存储,包括PostgreSQL,MySQL,Redis,BadgerDB和BoltDB。 Custom的SCS:Go功能的HTTP会话管理通过中间件自动加载和保存会话数据。 选择服务器端会话存储,包括PostgreSQL,MySQL,Redis,BadgerDB...
Appium代理Python 代理将 Appium 会话请求转发到不同的 Appium 服务器实例(因此客户端配置单个端点)介绍目前只支持一个会话。 即,如果您连接了多个设备,则无法使用相同的服务器实例同时对它们运行测试。 一种...
在API场景中通常通过命令牌来实现用户授权,而非维护请求之间的会话状态。AVEL项目中使用Passport可以轻松而轻易地实现API授权认证,Passport可以在几分钟之内为您的应用程序提供完整的OAuth2服务端实现。
Ajax请求session超时处理流程 java服务器端处理: SessionValidateFilter中修改: if (ServerInfo.isAjax(request)) { request.setAttribute("statusCode", 301); request.setAttribute("message", "Session ...
基于TCP socket实现的支持报文解析并返回响应报文的Web服务器,可以响应多种文件需求并能够处理特定的错误情况 服务器实现及其功能: 1、读取配置文件,为服务器自身设置IP地址、端口号、阻塞模式、最大连接数目并...
分布式会话跟踪系统架构设计与实践 张志桐@美团点评基础架构中心 20160625 链路追踪(调用链路监控)最出名的是谷歌公开的论文提到的Dapper(中文版)。开发Dapper是为了收集更多的复杂分布式系统的行为信息,理解...