asp.net – 为什么不调用我的IHttpHandler?
我试图获得一个自定义处理程序在ASP.NET 3.5中的特定URL(或一组URL)。
处理程序实际上没有做任何重要的工作 – 它只是记录请求。我可以发布的代码,如果任何事情,它相关的,但我真的不认为它被打电话。 (特别是,对于正常的异常,我得到一个自定义的错误页面和日志…这里我只是得到的香草IIS 404.) 这里是web.config文件的相关位: <system.web> <httpHandlers> <add verb="GET,POST" path="*.robot" validate="false" type="CSharpInDepth.Wave.RobotHandler,CSharpInDepth"/> </httpHandlers> </system.web> (很明显,在这一节也有其他的东西,但我不认为它的相关性。) 在本地,运行在dev服务器下,它工作正常。在我真正的盒子,我总是得到一个404.网站目录下的所有内容是相同的(通过svn复制)。这包括bin目录包含CSharpInDepth.dll,我已经验证包含CSharpInDepth.Wave.RobotHandler。 我试图获取http://csharpindepth.com/foo.robot,只得到一个404。 我试过有和没有程序集名称,特定的URL或通配符…没有什么工作。 我相信我刚刚错过了一些简单的标志在某处的IIS配置,但我被吹了,如果我可以找到它… 编辑:这是IIS版本6.尝试将* .robot添加到ISAPI过滤器现在… 解决方法
如果托管盒是IIS7在集成管道中,您需要将其添加到配置的其他位:
<system.webmodules> .... <modules> <add name="RobotHandler" type="CSharpInDepth.Wave.RobotHandler,CSharpInDepth"/> </modules> .... </system.webmodules> 如果是IIS6,那么你需要将* .robots映射到ASP.NET ISAPI DLL。 (对于非Skeets你这样做如下) >打开IIS管理员。>右键单击您要配置的网站并从中选择属性上下文菜单。这将显示网站属性“对话框。>选择主目录“选项卡,然后单击配置按钮。这会显示应用程序配置对话框。>单击加。>选择aspnet_isapi.dll从.NET框架目录,您要映射的扩展名所有动词,或只是那些你想映射。>单击确定。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – 从业务层使用邮件库
- asp.net – 操作无法完成. FORMATETC结构无效
- .net – RESTful WCF的裸最低配置
- asp.net-mvc – 使用DataAnnotations有条件地验证ASP.NET M
- asp.net-mvc – ASP.NET MVC – 从另一个项目引用主/布局页
- asp.net-mvc – ASP.Net C#Razor显示编码的HTML而不是原始的
- asp.net-identity – AspNetCore – 使用Google身份验证时更
- 悟透JavaScript
- asp.net-mvc-5 – 无法在ASP.NET MVC 5.1上调用UrlHelper的
- AMF学习2远程调用的封装
- ASP.NET (C#) 应用篇-数据列分页操作-01_Adapter
- asp-classic – If子句未按预期工作
- asp.net – 元素’ToolkitScriptManager’不是已
- asp.net-mvc – 在asp.net mvc中启动一组未选中的
- 如何在ASP.net Identity 2.0上启用AccessFailedC
- asp.net-mvc-4 – 为kendo ui元素添加jquery验证
- asp.net-mvc-3 – 调整使用jquery的MVC3应用程序
- asp.net-mvc – 你在哪里把你的验证放在asp.net
- Asp.net MVC Razor – 自定义javascript里面的if
- asp.net-mvc – Silverlight 3是否会改变MVC与Si