System.Web.HttpException:这是一个无效的脚本资源请求

jan*_*bik 9 c# asp.net

将我们的网站推送到我们的客户端生产服务器时出现此错误,但该页面在其开发/测试服务器上工作正常.导致此错误的原因(考虑到我自己没有使用任何Web资源,但我使用的是asp.net ajax工具包).

Rob*_*ine 11

你能在这个错误上获得完整的堆栈跟踪吗?服务器事件日志中会有一个(系统或应用程序,不记得哪个)?

ASP.NET的各个部分都使用脚本资源,至少有两个略显模糊的原因导致它们失败,我想到了这种错误.

  1. 信不信由你,如果你的dll嵌入了资源,并且它们将来会发生这种情况(如果你曾经在英国编译dll,然后立即将它们部署到美国网络服务器,你会很清楚这一点问题!).我不记得这显示的事件日志错误,但会知道我是否看到它 - 并且它不是立即显而易见的.
  2. 如果负载平衡器在多个服务器之间路由请求而不是"粘滞",并且您的服务器具有不同的机器密钥,则请求将失败,因为标识资源的加密查询字符串将无法在另一台服务器上解密.这将导致堆栈跟踪包含其中的各种加密类型.

还有很多其他原因(例如上面提到的不正确的uris或querystrings被破坏),但是有一个完整的堆栈跟踪将有助于此处.

  • 子弹1 !!!! DLL比系统时间更新!我不相信!!! 这么多! (2认同)

Ata*_*hev 0

您可以检查生成此错误的网址。Web 资源(由 Ajax 工具包使用)依赖于查询字符串参数。如果该参数以某种方式(可能是由某些恶意用户)更改,HTTP 处理程序将抛出异​​常,表明它无法找到所请求的 Web 资源。