2011-03-08 71 views
0

我们使用.NET 2005 SSRS 2005SSRS问题越来越ASP.NET会话已过期

好,我们有一个报告发达国家和SSRS服务器上承载的是相同ASPX应用

在我们的web应用程序

中的Default.aspx有一个报表查看器显示报表应用程序服务器

部署测试服务器上,其中链接到应用程序http://testserver/appname 和报表服务器的链接是http://testserver/reportserver

每一件事情是工作的罚款

在生产服务器

我们有一个针对的是应用程序的不同网站名称http://applicationname 在生产的每一个应用程序是不同模式的网站

所以在这里我们有http://applicationname的网络应用程序 和http://servername/reportserver的报告

这里的报表查看器没有显示该报告,但给下面的错误

ASP.NET会话已过期

AspNetSessionExpiredException:ASP.NET会话已过期] Microsoft.Reporting.WebForms.ReportDataOperation ..构造函数()866 Microsoft.Reporting.WebForms.HttpHandler.GetHandler()719 Microsoft.Reporting.WebForms.HttpHandler.ProcessRequest(HttpContext的上下文)15 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep。执行()+638 System.Web.HttpApplication.ExecuteStep(IExec utionStep一步,布尔& completedSynchronously)+177

我可以得到一些帮助,请

更新: 测试了它的生产为http://productionserver/applicationname 当我把应用作为一个虚拟的它工作正常(那目录下的默认站点) 但当我把应用程序作为安全站点http://applicationname在同一台服务器上我得到错误?

+0

奇怪的行为,发现这个问题不会发生,如果我从铬运行页面,但它是如果我运行与任何IE浏览器的页面,不幸的是我们必须在我们的组织支持IE浏览器 – Ali 2011-03-08 07:11:09

+0

哪个版本的IE是你在用吗? – VinayC 2011-03-08 07:34:26

+0

在IE 8和IE 6上测试,因为这两个仍然在我们的组织中使用 – Ali 2011-03-08 07:38:17

回答

0

你可以尝试三件事情,前两项是here

1)更改默认的是InProc会话状态模式为StateServer模式如下:

<sessionState mode="StateServer" stateConnectionString="tcpip=localhost:42424" cookieless="false" timeout="20"/>

2)您可以在报告中的图像。当您将报告投入生产时,您可能会伪造该报告中嵌入的图像。

3)你的IIS可能试图旋转起来更加的过程或任何 - 无论如何,设置您的maxworkingprocesses为1,这样它不会尝试旋转起来新的。

+0

亲爱的理查德可以解释解决方案1.更请请放在这里? – Ali 2011-03-08 07:42:45

+0

请参阅http://msdn.microsoft.com/en-us/library/ms972429.aspx,这里http://msdn.microsoft.com/en-us/library/ms178586.aspx。 – richard 2011-03-08 08:05:39

+0

亲爱的我试过所有的解决方案,但没有为我工作 – Ali 2011-03-08 09:34:16

1

如果报告的路径包含下划线,则可能还会遇到此问题。除了删除它们之外,我还没有发现一个修复程序,但这确实有效(至少对我们来说)。

EG:http://reportserverhost/Reports_Dev/SomeReport必须成为http://reportserverhost/Reports Dev/SomeReport才能工作。

对我没有意义,但这是我们的修复。