ASP.NET生成eurl.axd Http异常错误的处理方法

 更新时间:2011年05月02日 12:40:27   作者:  
在IIS6中同时启用了ASP.NET 2.0 和 ASP.NET 4.0 后,网站程序可能会出现如下错误:“ System.Web.HttpException: Path ‘//eurl.axd/‘ was not found. ”
在IIS6中同时启用了ASP.NET 2.0 和 ASP.NET 4.0 后,网站程序可能会出现如下错误:“ System.Web.HttpException: Path ‘//eurl.axd/‘ was not found. ”

错误发生的原因是当ASP.NET检测到Web站点配置为使用ASP.NET 4.0,本地ASP.NET 4.0 的组件会传递一个不能扩展的 URL到ASP.NET的管理程序作进一步处理。但是,如果一个低于ASP.NET 4.0 的网站配置为使用ASP.NET 2.0,处理这样不能扩展的 URL 时,URL的修改结果中会包含字符串“eurl.axd”,修改后的URL会被发送到 ASP.NET 2.0应用程序。

ASP.NET 2.0中是不能识别“eurl.axd”的。因此ASP.NET 2.0会尝试查找一个文件名为“eurl.axd”的文件并执行它。因为没有这样的文件,所以会请求失败,Http异常并抛出带有字符串“eurl.axd”的错误。

有三种方法可以解决这样的问题:

1.如果网站程序不需要ASP.NET 4‎.0 的支持,那么可以直接配置网站使用ASP.NET 2.0。

2.如果网站程序需要ASP.NET 4‎.0的支持,就需要将该网站下使用ASP.NET 2.0的虚拟目录移动到其他网站。

3.如果上面两种方法都不适用于你的实际情况,那么就只能用这种方法了:

打开注册表找到“HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\ASP.NET\\4.0.30319.0”,添加键值名为“EnableExtensionlessUrls” 类型为“DWORD”的键值,并设置值为“0”。然后在cmd中运行“IISRESET”,重启IIS以读取注册表修改后的内容。注:此项修改就是关闭ASP.NET 4‎.0对无扩展URL的处理,若将此项键值设为“1”则开启。

相关文章

  • ASP.NET中获取URL重写前的原始地址详解

    ASP.NET中获取URL重写前的原始地址详解

    在ASP.NET中,如果你使用了URL重写,通过HttpContext.Request获取到的是重写后的地址。如果这个地址要返回给客户端(比如Redirect),我们一般希望是重写前的友好地址。
    2013-07-07
  • 利用Aspose.Cells实现万能导出功能

    利用Aspose.Cells实现万能导出功能

    这篇文章主要为大家详细介绍了利用Aspose.Cells实现万能导出功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • ASP.NET中下载文件的几种实例代码

    ASP.NET中下载文件的几种实例代码

    本文描述了.net中几种下载文件的方法,需要的朋友可以参考一下
    2013-03-03
  • asp.net不用设置iis实现url重写 类似伪静态路由

    asp.net不用设置iis实现url重写 类似伪静态路由

    说到不用设置iis,主要是为了实现在虚拟主机或是拿不到iis操作限的时候,不能添加isap又想实现类似于静态化的程序实现方式,先声明,这里最终要实现的效果是,最终可以用12345.html替换show.aspx?id=12345这样的地址访问功能,支持任意扩展名及无扩展
    2014-01-01
  • asp.net mvc webapi 实用的接口加密方法示例

    asp.net mvc webapi 实用的接口加密方法示例

    本篇文章主要介绍了asp.net mvc webapi 实用的接口加密方法示例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10
  • .NET中RDLC循环处理数据的应用分析

    .NET中RDLC循环处理数据的应用分析

    本篇文章介绍了,.NET中RDLC循环处理数据的应用分析。需要的朋友参考下
    2013-05-05
  • Asp.NET 多层登陆实现代码

    Asp.NET 多层登陆实现代码

    昨天尝试学着PETSHOP的分层思想,写了个.NET下的登陆例子,不过比PETSHOP要精简很多,采用access数据库,方便学习。希望对大家有帮助。
    2008-12-12
  • 记Asp.Net Core Swagger使用并带域接口处理的方法

    记Asp.Net Core Swagger使用并带域接口处理的方法

    这篇文章主要介绍了记Asp.Net Core Swagger使用并带域接口处理的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • ASP.NET MVC 4使用PagedList.Mvc分页的实现代码

    ASP.NET MVC 4使用PagedList.Mvc分页的实现代码

    本篇文章主要介绍了ASP.NET MVC 4使用PagedList.Mvc分页的实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • .NET Core利用动态代理实现AOP(面向切面编程)

    .NET Core利用动态代理实现AOP(面向切面编程)

    用动态代理可以做AOP(面向切面编程),进行无入侵式实现自己的扩展业务,调用者和被调用者之间的解耦,提高代码的灵活性和可扩展性。本文将为大家详细介绍实现的方法,感兴趣的可以学习一下
    2022-01-01

最新评论