两页之间的ASP II7会话为空

时间:2012-11-08 09:33:23

标签: session iis asp-classic string

我在两个页面之间使用会话空白。

one.asp

<%
 session("one") ="x"
 response.write session("one") ' this prints out x
 %>

如果我在one.asp之后调用two.asp

two.asp

<%
 response.write session("one") ' this prints out nothing
 %>

什么都没打印出来。这不是缓存问题。 实际上,这只会发生 如果我使用新的主机名调用页面,我在IIS中设置绑定 (我在Windows Server 2008上使用IIS7)

http://newhostname/one.asp and http://newhostname/two.asp

如果我使用我的机器名称

http://mymachine/one.asp and http://mymachine/two.asp

一切正常,第二页.asp按预期打印x

你知道问题是什么吗? 感谢

2 个答案:

答案 0 :(得分:0)

如果在拉出two.asp之前页面已闲置很长时间,则会话可能已过期。

如果浏览器已关闭,会话标识已更改,这会导致会话关闭。

如果这两个页面位于不同的域(包括子域),则它们没有相同的会话标识,这种情况下two.asp

的会话永远不存在

答案 1 :(得分:0)

打开IIS管理器并导航到要管理的级别。有关打开IIS管理器的信息,请参阅打开IIS管理器(IIS 7)。有关在UI中导航到位置的信息,请参阅IIS管理器(IIS 7)中的导航。

在“功能视图”中,双击“ASP”。 在ASP页面的“服务”下,展开“会话属性”。

从“启用会话状态”下拉列表中选择“确定”。

在“操作”窗格中,单击“应用”。