【问题标题】:IIS 6, Wildcard Application Mapping, and FrontPageIIS 6、通配符应用程序映射和 FrontPage
【发布时间】:2010-09-14 01:10:44
【问题描述】:

虽然我很想在我托管的流量很大的网站上不需要 FrontPage Extensions,但客户需要它来管理该网站。为了在 ASP 和 ASP.NET 资源之间提供集成的表单身份验证安全性,刚刚在该站点上的 IIS 6 中实现了通配符应用程序映射,这破坏了 FrontPage 扩展。一切都像魅力一样工作,包括加密和缓存角色,现在甚至 ASP 也可以使用,除了 FrontPage 的丢失。具体来说,您甚至无法登录 FrontPage 管理(凭据不正确)。

有没有人通过 ASP.NET 2.0 aspnet_isapi.dll 让 FrontPage 使用通配符应用程序映射路由?

更新:我已经标记了@Chris Hynes 的答案,即使我没有时间进行测试(并且当前配置适用于客户端)。这是有道理的,并且与我认为正在发生的事情以及可能的处理方式一致,但当时不知道将请求路由到哪里(fpadmdll.dll)。非常感谢!

【问题讨论】:

    标签: asp.net iis asp-classic frontpage


    【解决方案1】:

    这里的问题听起来像是通配符映射优先于首页扩展 ISAPI 处理程序和/或弄乱了请求/响应。我会尝试创建一个什么都不做的处理程序并将其映射到 fpadmdll.dll。

    类似这样的:

    namespace YourNamespace
    {
        public IgnoreRequestHandler : IHttpHandler
        {
            public IsReusable { get { return true; } }
    
            public void ProcessRequest(HttpContext context)
            { }
        }
    }
    

    然后将其映射到 web.config 中:

    <httpHandlers>
        <add verb="*" path="fpadmdll.dll" type="YourNamespace.IgnoreRequestHandler, YourDll"  />
    </httpHandlers>
    

    【讨论】:

    • 这难道不会接受通配符页面请求并将它们也传递给 fpadmdll 吗?所有通配符都将 HttpRequest 传递给它们。所以 FPE 请求会被传递给这个请求以及 aspnet_ISAPI
    • 它被传递给 ASP.NET 处理程序,因为它是通配符,是的。我的想法是,无论为 ASP.NET 准备什么,都没有意识到它是一个 fpadmdll 请求,也可能是 404ing 它或在它到达首页之前的东西。这种映射会阻止 ASP.NET 接触请求。
    猜你喜欢
    • 2011-11-19
    • 1970-01-01
    • 2010-11-19
    • 2016-03-07
    • 1970-01-01
    • 2010-09-24
    • 1970-01-01
    • 1970-01-01
    • 2011-10-05
    相关资源
    最近更新 更多