为什么我的应用程序在我的开发环境中返回IIS 404页面而不是测试或生产?

时间:2013-01-21 14:11:10

标签: c# iis http-status-code-404

好的,所以我在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页面

1 个答案:

答案 0 :(得分:0)

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

另外,请检查您的网站.Config具有以下设置:

<system.webServer>
  <validation validateIntegratedModeConfiguration="false"/>
  <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>