1

好的,所以我在http://dev.myapplication.com本地开发我的应用程序(使用主机文件作为 DNS),然后我有http://test.myapplication.comhttp://www.myapplication.com .

在 IIS 7(相同版本,开发测试和实时版本)中,我打开了“错误页面”并编辑了 404 状态代码以转到路径“/en/404.mvc”。这在本地工作,我可以导航到产生 404 页面的http://dev.myapplication.com/non-existent-url.mvc 。

但是,如果我导航到http://dev.myapplication.com/non-existent-url(即静态地址),它会显示 IIS 404 页面并说它是由静态文件处理程序而不是我的 mvc 文件处理程序处理的。

我对为什么会发生这种情况感到困惑,因为它已经成功地修改了我的 web.config,这反过来又允许它在测试和生活中工作,而不是在本地工作。即http://www.myapplication.com/404将显示我自定义的 404 页面

4

1 回答 1

0

您需要一个通配符映射来通过 aspnet_isapi 运行所有请求 - 这篇文章很好地解释了它:http ://www.asp.net/mvc/tutorials/older-versions/deployment/using-asp-net-mvc-with-different- iis-cs 版本

另外,检查您的 web.Config 是否有以下设置:

<system.webServer>
  <validation validateIntegratedModeConfiguration="false"/>
  <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
于 2013-01-21T15:30:21.460 回答