2014-09-29 56 views
2

我想部署一个Vb.net Asp.net Web窗体应用程序,但有问题。Asp.net丢失会话在回帖中的一些页面在铬

我们有一个有点奇怪的问题,我们似乎正在丢失一些aspx页面上的会话,在回发(不是全部)上。

在Internet Explorer和Firefox中似乎完全正常。

这只发生在部署到IIS 6时,而不是在本地调试时发生。

它使用HTTPS。

有没有人有任何想法或建议为什么可能或在哪里重点调查?

找不到JavaScript的错误。 代码隐藏中没有发生错误。

感谢您的帮助!


更新1: 感谢您的意见。我们在所有页面的cookie中都有相同的ASP.NET_SessionId - 这永远不会改变... 1.输入第一页,填写表格,会话变量被添加2.输入第二页我们有会话变量,这些被选中page_load事件。 3.填写第二页上的表单并提交,我们点击page_load事件,再一次检查会话变量是否存在,但是这次他们缺失。 ...在我们清除这些会话变量的代码中没有任何地方。这是一个Web应用程序项目。

我认为我们使用表单身份验证,它被设置为允许匿名,因为这将是一个公共应用程序这只在Chrome中发生,并且只在部署到IIS时发生 - 在本地调试时不会发生Visual Studio 2010测试Web服务器。会不会有一些模糊的环境问题?这是非常令人沮丧的! :/我目前没有工作,所以我需要仔细检查其他一些细节,这是我们最近继承的代码,原作者不在我们这里。非常感谢您的帮助!我很欣赏这一点。

更新2: 我们正在丢失页面上的SaveStateComplete事件和回发之间的会话变量。

  • 的Page_Load - QuoteCarousel.aspx - 是回发=假会话ID:yu2afsxpafu0qmzbkxqp1dd4。 会话中的项目:23
  • Page_SaveStateComplete QuoteCarousel.aspx会话Id:yu2afsxpafu0qmzbkxqp1dd4。 会话中的项目:32
  • Page_PreInit QuoteCarousel.aspx会话Id:yu2afsxpafu0qmzbkxqp1dd4。 会话中的项目:7
  • Page_Init QuoteCarousel.aspx会话Id:yu2afsxpafu0qmzbkxqp1dd4。 会话中的项目:8
  • Page_InitComplete QuoteCarousel.aspx会话Id:yu2afsxpafu0qmzbkxqp1dd4。 项目在会议:8
  • 的Page_Load - QuoteCarousel.aspx - 是回发=真会话ID:yu2afsxpafu0qmzbkxqp1dd4。中的项目:8
+0

很可能有一个名为'ASP.NET_SessionId'的cookie告诉我们它的值是否在post backs期间的任何时候发生了变化,或者cookie被移除 – Dalorzo 2014-09-29 21:51:04

+0

0123'另外告诉我们你的session是否在'proc'或'state server '什么是你的会话超时。 – Dalorzo 2014-09-29 21:52:56

+0

什么类型的项目部署'Web应用程序项目'或'网站项目'? – Dalorzo 2014-09-29 21:54:23

回答

0

该应用程序位于网站的物理文件夹中。 我将其更改为虚拟文件夹,并解决了问题。关于问题的原因,我还不清楚。

0

这可能会帮助一些人。我有同样的问题。在Firefox工作,在IE中工作。在Chrome中丢失的会话。基本上,我设置并绑定了一个gridview,然后设置了一个会话变量。当触发回发时,在RowCommand事件中运行代码时,会话变量全部丢失。

我也不清楚为什么这个工作,但我在web.config曾在这些值(想,当我加了一些MVC元素,以我的网站,他们得到了自动添加):

<!-- 
    <add key="PageInspector:ServerCodeMappingSupport" value="Disabled" /> 
    <add key="webpages:Version" value="3.0.0.0" /> 
    <add key="webpages:Enabled" value="false" /> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
--> 

当我评论了这些数据,一切都开始在Chrome中运行。由于我实际上并没有使用我添加的MVC引用,所以我对此解决方案很满意,但我不确定它为什么起作用。