2

我的 Session 变量没有在托管在 iis 服务器 8 上的经典 asp webPages 中初始化,我已经在会话状态功能视图以及 IIS 服务器 8 的 ASP 调试属性部分中配置了会话属性,

在将我的整个网站从带有 IIS7 的 Windows server 2008 r2 转移到带有 IIS8 的 Windows server 2012 r2 之后,请帮助我面对这个问题

在 IIS 7 上,我没有遇到有关此会话变量初始化的任何问题

任何帮助,将不胜感激

提前致谢

4

4 回答 4

5

您需要在 IIS7/IIS8 中的经典 asp 下启用会话状态。

打开 IIS 管理器。导航到您正在处理的站点。在右侧双击 ASP。单击会话属性 + 以显示所有选项。将启用会话状态更改为 true。

于 2013-09-03T04:42:38.623 回答
2

我有同样的问题。就我而言,网站没有 cookie。我不为我的 websie 使用 SSL 证书,并且<httpCookies requireSSL="true" />在 section 中存在代码system.web。在我将其更改为<httpCookies requireSSL="false" />我的问题解决之后。

于 2018-05-31T06:08:35.983 回答
0

如果 IIS 设置中的会话状态是 ok 的,请检查以确保您没有使用session.Abandon(),因为调用此方法时,当前 Session 对象不会被删除,直到当前页面上的所有脚本都被处理完。这意味着可以访问与调用 Abandon 相同的页面上的会话变量,但不能从另一个 Web 页面访问,也不能在您计划使用会话对象在两个页面之间传输数据时访问。

于 2014-08-15T13:29:44.273 回答
0

试试这个代码来确保变量没有被初始化:

dim i
dim j
j = Session.Contents.Count
Response.Write("Session variables: " & j & "<br>") 
For i=1 to j
  Response.Write(Session.Contents(i) & "<br>") 
Next

上面的代码将显示是否有任何变量被初始化以及每个变量的内容。

于 2013-04-26T12:49:11.680 回答