【问题标题】:Default Document and HttpHandler serve a specific pageDefault Document 和 HttpHandler 服务于特定页面
【发布时间】:2011-05-31 14:09:57
【问题描述】:

我处于以下情况。

我有带有 ASP.NET 应用程序的 IIS 7.5。应用程序必须以 IIS 经典模式运行。

我有一个服务于所有请求的 HttpHandler:

  <httpHandlers>
  <add verb="*" path="*.aspx" type=".....HandlerFactory..." />
</httpHandlers>

问题是我无法为非物理文件建立默认文档。我希望默认页面是:Home.aspx(这是一个非物理文件)。

所以当我去:www.mysite.com 我得到一个错误:

HTTP 错误 403.14 - 禁止 Web 服务器配置为不列出 此目录的内容。

我不想进行重定向。

有没有什么方法可以在不创建 index.html 重定向到 Home.aspx 的情况下完成此操作?

提前致谢!

【问题讨论】:

    标签: asp.net iis httphandler default


    【解决方案1】:

    一种选择是将请求重写到 / 到 /home.aspx。

    这里的旧 IIS5/6 技巧是在文件夹中放置一个空白默认文档——这将超越“文件是否存在”,但您的 http 处理程序将启动并接管,所以说空白文档不会参与其中。

    我会注意到这就是 ASP.NET MVC 在根目录中附带 Default.aspx 的原因。

    【讨论】:

      【解决方案2】:

      如果您创建一个空白的 Home.aspx 文件并将其设置为默认页面,那么 IIS 会将其选为您的默认文档,但它仍将由您的处理程序处理。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-10-27
        • 2011-02-23
        • 1970-01-01
        • 2020-07-10
        • 1970-01-01
        • 2012-01-23
        • 2011-01-27
        • 2013-04-05
        相关资源
        最近更新 更多