IIS / ASP.NET Ajax无法加载

时间:2014-07-21 19:26:30

标签: asp.net ajax iis web-config

几个星期前我有一个项目运行完美,当我尝试将网站复制到最终位置时,它开始显示此错误。

Uncaught SyntaxError: Unexpected token < ScriptResource.axd:3
Uncaught SyntaxError: Unexpected token < ScriptResource.axd:3
Uncaught Error: The structure of ASP.NET Ajax client failed to load. VM5538 home:47
Uncaught SyntaxError: Unexpected token < ScriptResource.axd:3
Uncaught ReferenceError: Sys is not defined

问题是,我只在新文件夹中的网站上收到此错误,如果我尝试使用旧版本的Visual Studio打开它,我没有错误。

我已经尝试从头开始在最终文件夹中创建一个新项目并放入我的文件,然后我继续得到它。

我认为它可能与web.config / IIS有关,但我无法找到错误。

提前致谢。

3 个答案:

答案 0 :(得分:3)

我遇到了这个问题,在我的情况下,这是由定义了默认路由引起的。通过在默认值之前添加忽略规则来修复,如下所示:

   routes.Ignore("{resource}.axd/{*pathInfo}"); // this is the fix!

   routes.MapPageRoute("StandardRoute", // default route
       "{*value}",
       "~/Default.aspx");

更多信息:http://blog-rat.blogspot.co.uk/2011/04/url-routing-causing-to-load-loginaspx.html

答案 1 :(得分:0)

您可以尝试以下任何一种解决方案,看看它是否解决了您的问题。

1。您可能需要在<httpHandlers>文件中<system.webServer>的{​​{1}}下添加

web.config

2。可能在虚拟目录映射中未定义<system.webServer> <httpHandlers> .... <add verb="GET" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler" validate="false"/> </httpHandlers> </system.webServer> 扩展名。转到.axd到虚拟目录的属性,单击Configuration按钮,选择Mappings选项卡。您必须使用aspnet_isapi.dll打开。IIS manager扩展名。取消选中axd复选框Check that file existsWebResource.axd不是实际文件。导航选项可能会推迟,具体取决于您正在使用的IIS版本。

3。在应用程序根目录中创建一个空ScriptResource.axd并将其重命名为.txt

答案 2 :(得分:0)

我设法通过以不同的顺序重写我的规则来解决问题。这是因为我有这个不同的URL模式,我的web.config在验证上搞乱了。