CnBlogsDotText使用实例
在网站下载下来的CnBlogsDotText源码并不能正确的运行。在注册博客时会弹出错误:
要处理此请求,必须在配置中注册 WebResource.axd 处理程序
<configuration> <system.web> <httpHandlers> <add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" /> </httpHandlers> </system.web> </configuration>
查找资料发现问题出现在:
<!--This will process any ext mapped to aspnet_isapi.dll --> <add verb="*" path="*" type="Dottext.Common.UrlManager.UrlReWriteHandlerFactory,Dottext.Common"/> <add path="WebResource.axd" verb="*" type="System.Web.Handlers.AssemblyResourceLoader" validate="true"/>
而查看MSDN了解到AssemblyResourceLoader类型 处理程序响应对 GetWebResourceUrl 方法生成的 URL 的请求。响应请求之前,AssemblyResourceLoader 处理程序确保资源可通过 Web 直接使用。而这里我们实际需要的是将WebResource.axd从UrlReWriteHandlerFactory工厂中排斥,应该把其放到<add verb="*" path="*" type="Dottext.Common.UrlManager.UrlReWriteHandlerFactory,Dottext.Common"/> 前面。重新载入,页面正常显示。