今天在调试一个ASP.Net 程序的时候出现了题目中的错误,具体提示如下图:
因为是初学者,对给出的原因提示还不是很懂,在网上找了大半晌的解决方案竟是一些同样问题却没有答案的。后来看到一张图片的提示,然后联想上图中的提示,自己去IIS管理器中瞎鼓捣最终竟然解决了。然后总结了一下,最大的原因就在于HTTP谓词。所谓HTTP谓词就是指Web服务器处理用户提交的请求的方法,一般有GET、POST、HEAD、 DEBUG和TRACE等。一般IIS默认能处理静态的htm,html文件,以及动态的脚本asp,aspx文件,如果要处理php或其他类型的脚本语言,则必须做好ISAPI映射!
下面是我的解决方法:
打开IIS管理器,以“功能视图”显示
找到你的项目所在网站,双击右侧的“处理程序映射”进入下图:
右击ISAPI,选择“编辑”,如下图:
在“可执行文件”下面按照上面的路径找到你电脑里的dll,然后选择下面的请求限制,进入下图:
默认的是第一项,选择第二项,然后添加“GET,HEAD,POST,TRACE”,一路确定。以上步骤就做好了ISAPI映射,下面开启它。
最后回到刚才的页面,然后右击,选择“编辑功能权限”
在打开的对话框中,将“执行”复选框打勾
最后确定即可。