【问题标题】:Disable "httpErrors" element for a specific path禁用特定路径的“httpErrors”元素
【发布时间】:2018-12-21 11:08:14
【问题描述】:
我在使用 Web.config 中的 httpErrors 元素时遇到问题。
我决定使用 httpErrors 元素来处理 http 错误并在我的 (ASP.NET MVC) 应用程序中显示自定义错误页面。问题是我还有一个 API,我不希望 httpErrors 元素处理它的错误,它有自己的自定义错误响应。
我希望在 API 方面禁用它。
我可以做些什么来实现我想要的吗?
【问题讨论】:
标签:
asp.net
xml
asp.net-mvc
error-handling
web-config
【解决方案1】:
我找到了解决办法。
我们可以通过使用location 元素来解决这些问题:
我们只需将下面的代码放在 Web.config 的 configuration 元素(根)中:
<location path="api">
<system.webServer>
<httpErrors existingResponse="PassThrough"></httpErrors>
</system.webServer>
</location>
<location> 元素实际上所做的是它覆盖了以您在 path 属性中输入的内容开头的路径的配置,在我的例子中是“api”。然后你要做的就是禁用httpErrors,这可以通过将existingResponse属性设置为PassThrough来完成。
我希望这会有所帮助。