【问题标题】:ASP.NET routing on IIS 6IIS 6 上的 ASP.NET 路由
【发布时间】:2010-10-23 03:35:50
【问题描述】:

根据 Mike Ormond 的示例“使用独立于 MVC 的 ASP.NET 路由”,我使用 ASP.NET 路由创建了一个基本站点。这在我运行内置网络服务器的本地机器上运行良好。

但是,当我将它部署到我的服务器(Windows Server 2003IIS 6、ASP.NET 3.5 SP1)时,它只会显示 404 错误。

我在某处读到我打算设置通配符路由。我该怎么做?

需要进行哪些其他配置更改才能使其在我的服务器上运行?

【问题讨论】:

    标签: iis-6 asp.net-routing


    【解决方案1】:

    您可以在 Steve Sanderson 的博文“Deploying ASP.NET MVC to IIS 6”中找到一些有用的信息。

    【讨论】:

      【解决方案2】:

      在服务器上,打开 IIS:

      1. 右键单击站点/虚拟目录,选择属性
      2. 转到主目录/虚拟目录选项卡,单击配置(靠近底部)
      3. 再次靠近底部,点击插入按钮
      4. 输入C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll
      5. 替代:对于 ASP.NET 4.0 输入 C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll
      6. 取消选中“验证该文件是否存在”按钮,单击“确定”并关闭所有对话框

      【讨论】:

      • 对于信息,用户报告(现已删除)他的案例中缺少“插入”按钮。这当然不是你的错!
      • 使用 v2 版本的 dll 而不是 v4 的任何原因?
      【解决方案3】:

      您可以在 TechNet here 上找到有关通配符映射的“官方”讨论,但我喜欢 Phil Haack 的演练,您可以在 find here 上找到。不要担心这是关于设置 ASP.NET MVC 的讨论,只需查找标题为“IIS6 无扩展 URL”的部分 - 该设置适用于 MVC 和使用经典 web form 应用程序的路由。

      【讨论】:

        【解决方案4】:

        在IIS 6 64位下,确保4.)下的路径指向 C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll

        【讨论】:

          【解决方案5】:

          网址重写可以帮助您解决问题。我已经实现了允许在任何 IIS 版本上部署 MVC 应用程序的解决方案,即使使用虚拟主机也是如此。 http://www.codeproject.com/KB/aspnet/iis-aspnet-url-rewriting.aspx

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-04-08
            • 2013-02-17
            • 2019-07-04
            • 1970-01-01
            • 2011-02-26
            • 1970-01-01
            相关资源
            最近更新 更多