我在生产服务器中的mvc 4中受到自定义错误的困扰。自定义错误页面可在我的开发计算机上使用。但不是在IIS8中发布时。这是我的web.config

<system.web>
<customErrors mode="RemoteOnly" defaultRedirect="/Message/DefaultError" >
  <error statusCode="404" redirect="/Message/Error404" />
  <error statusCode="500" redirect="/Message/Error500"/>
</customErrors>
</system.web>
 <system.webServer>
<httpErrors errorMode="Custom" existingResponse="PassThrough" defaultPath="/Message/DefaultError">
  <remove statusCode="404" subStatusCode="-1" />
  <error statusCode="404" path="/Message/Error404" responseMode="ExecuteURL" />
  <remove statusCode="500" subStatusCode="-1" />
  <error statusCode="500" path="/Message/Error500" responseMode="ExecuteURL" />
</httpErrors>

我不知道为什么这些设置在发布时不起作用。

最佳答案

尝试在web.config文件中进行以下修改:

<system.webServer>
 <httpErrors existingResponse="Replace" errorMode="Custom"  defaultResponseMode="Redirect">
 <remove statusCode="404"/>
 <error responseMode="ExecuteURL" statusCode="404" path="/Message/Error404" />
 </httpErrors>
</system.webServer>

关于asp.net-mvc - 如何使自定义错误页面出现在生产服务器上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25635250/

10-11 21:27