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

本文关键字:我的 测试 IIS 开发 应用程序 环境 为什么 返回 404页面 | 更新日期: 2023-09-27 17:55:00

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

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

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

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

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

您需要一个通配符映射来通过aspnet_isapi运行所有请求—本文对此进行了很好的解释:http://www.asp.net/mvc/tutorials/older-versions/deployment/using-asp-net-mvc-with-different-versions-of-iis-cs

还有,检查你的网页。配置有这些设置:

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