2015-10-09 17 views
0

我的自定义HttpHandler有问题。 1.所以,在我的解决方案我添加了一个项目 - 类库 - 处理器(所以命名空间是处理器)我的httphandler没有调用

  • 我补充一个实现IHttpHandler接口在此我MyHandler.css类类库。

  • 下一页在

    mysite的项目的web配置我添加此

    <system.web> 
         <httpHandlers> 
          <add verb="*" path="*.ascx" type="Handler.MyHandler, MySite "/> 
         </httpHandlers> 
    
  • 但是当我尝试看看会发生什么,如果我尝试访问.ascx文件在我的地盘 我得到的错误

    HTTP Error 404.7 - Not Found 
    The request filtering module is configured to deny the file extension. 
    

    为什么我的HttpHandler不调用 谢谢您不喜欢

    回答

    1

    这是因为IIS Request Filtering module被配置为拒绝.ascx文件的请求,并且过滤模块在IIS管道中的响应时间早于您的处理程序。请详细阅读this blog entry

    您可以通过使用IIS管理器工具配置请求筛选在IIS中“适当的”,或者如果你正在使用IIS快速通过编辑applicationhost.config文件,你会发现位于%userprofile%\Documents\IISExpress\config在那里你会寻找字符串:

    <add fileExtension=".ascx" allowed="false" /> 
    

    如果您不希望更改请求过滤配置,你总是可以考虑重新实行的处理程序作为一个模块这意味着从IHttpModule而不是IHttpHandler继承和做更多的腿部工作你自己。

    +0

    感谢您的帮助! –