0

我正在观察一个奇怪的情况,我希望有人有一些见识。这不是一个理想的情况(试图支持遗留的东西)。这个例子说明了我所观察到的:

我的负载平衡服务器池中有一台服务器。在从负载平衡 url 加载的外部页面中,我将一些值填充到 Page_Load 中的 HttpContext.Current.Session 中。

在该页面上是一个 iframe,它从特定服务器 url(负载平衡页面命中的同一服务器)加载内部页面。内页的 Page_Load 中的 HttpContext.Current.Session 没有我刚从外页塞进去的值。

我曾经认为它会根据用户 cookie 中的任何内容特定于机器。HttpContext.Current.Session 是否依赖于 url?

4

1 回答 1

1

这里有很多因素。首先,您确定它是从同一台机器加载 url 吗?请记住,iframe 是基于客户端的,而不是基于服务器的。这意味着当 iframe 加载另一个页面时,它也会通过负载平衡器,除非您有某种机制来确保它保持在同一页面上(例如粘性会话)。

其次,您用于 iframe 的 url 是否使用相同的域名?两者都使用相同的传输方式(http 或 https)吗?如果其中任何一个不同,它将为 iframe 创建一个新会话。

于 2012-09-25T17:51:26.957 回答