我已经设置了一个自定义错误处理程序,以便在发生崩溃时向用户显示诊断信息。问题是未显示自定义错误页面,并且在尝试显示错误页面时抛出异常(根据网页)。我无法弄清楚是什么原因造成的?我为 500 和 404 错误设置了类似的页面,它们可以正常工作。
错误页面说Server Error in '/' Application.
描述:处理您的请求时发生异常。此外,在执行第一个异常的自定义错误页面时发生了另一个异常。请求已终止。
生病显示我的设置片段,如果有人想看更多,请询问。仅供参考,我通过从我的删除连接字符串详细信息来抛出异常web.config
(这是我们在部署期间看到的实际错误,所以我想专门针对它)
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="404" />
<error statusCode="404" path="/error/notfound" responseMode="ExecuteURL" />
<remove statusCode="403" />
<error statusCode="403" path="/error/forbidden" responseMode="ExecuteURL" />
<remove statusCode="500" />
<error statusCode="500" path="/error/" responseMode="ExecuteURL" />
</httpErrors>
</system.webServer>
<!-- .... -->
<system.web>
<customErrors mode="On" defaultRedirect="~/Error" redirectMode="ResponseRewrite">
<error redirect="~/Error/NotFound" statusCode="404" />
<error redirect="~/Error/Forbidden" statusCode="403" />
<error redirect="~/Error/" statusCode="500" />
</customErrors>
</system.web>
然后我有一个带有默认Index()
功能的 ErrorController(此控制器中没有断点被命中)
public ViewResult Index()
{
return View("Error");
}
注意:我有函数Forbidden()
和NotFound()
- 我只是没有在这里复制它们 - 这些错误工作得很好。