【问题标题】:ASP.Net 1.1 with Wildcard Mapping gives 404 on default documents带有通配符映射的 ASP.Net 1.1 在默认文档上给出 404
【发布时间】:2010-09-28 08:17:59
【问题描述】:

我有一个应用程序,它被要求为使用大量查询字符串值的动态页面创建一个友好的 url。在互联网上进行一些研究后,我发现我需要创建一个 HttpModule 或 HttpHandler 来执行路由,然后在 IIS 中设置一个通配符映射到 aspnet_isapi.dll 的.Net v1.1(删除验证文件存在复选框)。

使用虚拟目录进行测试,在我的 XP Pro 机器上本地一切正常。

当我将它提升到测试环境(Server 2003)时,直接访问页面和路由工作正常;但是,默认文档不再有效。我在网上找到了一个参考,指出由于 ASP.Net WP 和 IIS6 的分离,IIS6 在默认文档逻辑之前处理通配符映射。

我尝试更新我的 HttpHandler 以考虑 / 路由;但是,路由页面上的代码不再起作用。在 Web.Config 中,我尝试使用路径作为 * 以及 / 并获得相同的响应。我也在使用我觉得不正确的 Response.Redirect。

我也尝试过 URLRewriter.net;但是,在花了几个小时试图让它工作后它没有工作(由于某种原因它不会在这个 asp.net 1.1 应用程序中路由)。

关于可能是什么原因或如何将我的路由转到默认页面和我的特定页面设置,同时不考虑其余部分的任何想法?

【问题讨论】:

    标签: asp.net url-rewriting friendly-url asp.net-1.1


    【解决方案1】:

    我在 URLRewriter 的 README 信息中发现了一些拼写错误。根据在线文档而不是二进制文件附带的示例对其进行配置后,我能够让它在本地工作并解决我的问题。

    在我将代码提升到我的测试服务器后,预期的路由正在运行,但默认的域路由仍然没有。我稍微修改了默认路由的 URL 模式,一切都开始工作了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-18
      • 1970-01-01
      • 1970-01-01
      • 2015-10-14
      • 2011-01-01
      • 2015-01-13
      • 2020-04-30
      • 2010-12-27
      相关资源
      最近更新 更多