ASP.NET(IIS)出现"没有为请求类型"GET"找到 HTTP 处理程序"

环       境:windows 2003 IIS6.0

程序支持:ASP.NET

.NET版本:2.0、4.0


问    题:之前服务器上各大网站运行良好,今天突然出现:"没有为请求类型"GET"找到 HTTP 处理程序 的异常信息。"的异常,解决此类问题:百度一下,搜索的结果并不令人满意,相关的解决方案更是很少。接下来了简单的总结了下网站出现此类才此类问题时,我们怎样做,可以避免一些弯路,节省更多的时间。

分    析:其实错误已经很明确的告诉我们了,是客户端在以Get方式发送http请求时,aspnet_isapi找不到处理该请求的Handler处理程序。原来是缺少handler处理程序了,那我们接着分析,什么原因会导致请求找不到handler呢?可能的原因有2:

1、没有注册.aspx应用程序扩展映射。

2、对于.NET来说。它的web.config的继承关系是:C:/windows/microsoft.net/framework/config/machine.config,我们可以在C:/windows/microsoft.net/framework/config/下,发现有两个很重要的config配置文件,分别是:machine.config web.config。网站的web.config就是从这两个文件中继承过来的,于是我们就会意识到,这两个文件的也有可能会导致该错误。

解决此类问题正确的步骤应该是:

       方法一,检查下C:/windows/microsoft.net/framework/config/web.config是否存在,如果不存在,那就是问题的所在,找到对应.net版本的web.cofig配置文件放到C:/windows/microsoft.net/framework/config/web.config该文件夹下。

       方法二,检查网站是否添加了aspnet_isapi.dll扩展,如果没有,则添加即可。

       方法三, 如果不行,尝试重新注册iis。C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis  -i 。

一般此类问题,完成以上三种方法的检测,即可解决。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。