我们有大约12台服务器为一个网站服务。在过去的几个小时里,一台服务器已经开始为WebResource.axd和ScriptResource.axd请求抛出异常。
异常
System.Web.HttpException --这是一个无效的脚本资源请求。
堆栈跟踪
(在System.Web.Handlers.ScriptResourceHandler.ProcessRequest(HttpContext上下文中)
在System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
在System.Web.HttpApplication.ExecuteStep(IExecutionStep步骤中,布尔& completedSynchronously)
断服务器URL
/WebResource.axd?d=S6kjkBsrIKni9uO5HCkv0c8eYObzibWXn9R6A7Yr_Fy7CW4dRFZm1HfcnUTEZ8xBYZDM-5zeTVk1tTgC1hp7d5YYw3o1&t=634308186300177825
所有其他服务器URL
/WebResource.axd?d=yj6PW1hbOvqhMkOh2gYGlw2&t=634207187366247462
我检查了每个服务器的web.config、machine.config,它们都是相同的。到目前为止,唯一能找到的不同之处是,在问题开始之前,服务器已经进行了修补,之后,有问题的服务器看起来使用的是与其他服务器不同版本的System.Web.dll?
有什么想法吗?
发布于 2011-01-20 22:38:37
找到了问题的根源。问题服务器应用了一个安全修补程序,该修补程序更新了System.Web.dll。出于某种原因,我们的托管提供商没有更新其他dll的任何一个,而这台服务器则生成了其他服务器的不同加密密钥。
为了确定哪个dll受到影响,我使用以下方法对webresource.axd查询字符串参数进行解密:
http://blogs.telerik.com/aspnet-ajax/posts/07-03-27/debugging-asp-net-2-0-web-resources-decrypting-the-url-and-getting-the-resource-name.aspx
发布于 2011-01-17 22:54:17
"?d=yj6PW1hbOvqhMkOh2gYGlw2&t=634207187366247462“在某种程度上是一个链接(哈希之类的?)对于system.web.dll中的资源,可以理解,在该服务器上使用不同的dll,链接是无效的。
https://stackoverflow.com/questions/4718413
复制相似问题