默认还是自定义错误页面? -WebConfig自定义错误defaultRedirect

时间:2018-10-30 15:11:06

标签: asp.net configuration custom-error-pages system.web

准备考试,如果您未在customError中指定错误代码,是否会得到默认错误页面?

我认为,由于已设置defaultRedirect,所有错误(无论是否专门考虑)都会发送到defaultRedirect页面。但是,我所见过的练习题却相反。我看着documentation,但我只能看到它说如果自定义页面不存在,它指的是默认值

<customErrors mode="On" defaultRedirect="Error.htm">
  <error statusCode="500" redirect="/CustomError.html"/>
</customErrors>

原始问题

发生400级错误时,将显示ASP.NET默认错误页面。 [对/错]

我相信这是错误的,答案说的是事实。

1 个答案:

答案 0 :(得分:2)

  

如果未指定错误代码,是否获得默认错误页面   在customError中?

是的。如果您未在customError中指定错误代码,则将使用默认错误页面。如果在customError中指定错误代码,则将使用指定的页面。当然,customError仅适用于由ASP.NET处理的元素,因此有可能您可以获得IIS错误页面,而不是您的web.config文件中列出的任何内容。

从您链接到的文档中,

  

定义自定义错误时,ASP.NET将为其分配标准   错误通常由基础服务(例如IIS)发出。 对于   例如,如果您为状态码404定义了自定义错误,   每当您引用不存在的.aspx页时,ASP.NET都会发出它。   自定义错误仅针对由   ASP.NET。例如,,如果您引用的是不存在的.htm页面,则为IIS   发出标准404错误。

要回答您提供的具体问题,

  

发生400级错误时,ASP.NET默认错误页面   显示。 [对/错]

这是对的,因为在web.config中没有为400级错误指定页面,因此使用默认错误页面。假定错误发生在ASP.NET应用程序内。