2009-06-10 63 views
3

我一直在我们的错误日志中看到这些错误。任何想法如何我可以找出它来自哪里,或者更好,但如何解决这个问题?WebResource.axd - 无效的ViewState

System.Web.HttpException:无效的viewstate。在在 System.Web.Handlers.AssemblyResourceLoader.System.Web.IHttpHandler.ProcessRequest(HttpContext的 上下文) System.Web.UI.Page.DecryptString(String s)将在 System.Web.HttpApplication.CallHandlerExecutionStep.System.Web .HttpApplication.IExecutionStep.Execute() 在System.Web.HttpApplication.ExecuteStep(IExecutionStep一步, 布尔& completedSynchronously)

更新 这是我迄今为止尝试过 - 我们正在运行一个单一的网络服务器(无农场)

  • 将计算机添加键值的web.config

回答

1

这看起来像你当视图状态不能被解码错误 - 如果一个请求是用别人的ViewState提交。

你可以用wget记录一个asp.net页面来复制它。将该本地保存的页面放在浏览器中,然后单击链接。当它进入服务器时,它会尝试并且无法解码已保存页面中的视图状态,您将看到该错误。

我在做一些反钓鱼的时候遇到了这个问题。

5

当谷歌(和其他搜索蜘蛛)收录我的网站之一,我有这个问题。我必须在/robots.txt中放置webresource.axd文件必须被忽略,并且错误从此停止。

我们使用的是ELMAH,所以我们能够看到请求该文件的浏览器版本,并且它以GoogleBot结尾。

2

我已经添加了微软建议的响应标头(ContentType和CharSet),但仍然出现这些错误。幸好它似乎没有对最终用户产生任何影响,但它会驱使我看到这些日志中的错误。