文件上说

existingResponse="PassThrough"

如果存在现有响应,则保持响应不变. http://www.iis.net/configreference/system.webserver/httperrors#005

但"现有react 存在"是什么意思?

例如,我希望我的customErrors处理程序 suppress ASP.NET响应,这样IIS就会认为该响应不存在.我该怎么做呢?

推荐答案

模式中有三个可能的值:

<attribute name="existingResponse" type="enum" defaultValue="Auto">
  <enum name="Auto" value="0" />
  <enum name="Replace" value="1" />
  <enum name="PassThrough" value="2" />
</attribute>

大致上,我是这样理解的:

PassThrough-保持现有响应不变,只要有响应即可.您的应用程序逻辑可能不返回任何内容.在这种情况下,将使用此处定义的错误页.

Auto-使用此 node 中定义的IIS错误页,除非在ASP.NET中设置:

Response.TrySkipIisCustomErrors = true;

如果您已经这样做了,那么将使用来自代码的响应.

Replace-始终使用IIS错误页,即使开发人员已设置为TrySkipIisCustomErrors.

最后一个 Select 似乎是你想要的.


Edit:

请考虑:

existingResponse="PassThrough"

现在try 打开一个不存在的ASP.NET页面,您将看到:

在此处输入图像描述

即使资源不在那里,运行时也会提供响应,并将其传递给浏览器.

现在,try 打开一个不存在的html页面.这一次我们仍然得到404状态,但是是一个空页.

更改为:

existingResponse="Auto"

失踪的asp.net页面仍然显示asp.net错误页面,但对于缺少的html页面,我们现在得到了IIS页面:

在此处输入图像描述

所以,总结一下:当看到缺失的html和aspx页面时

                .html-404   .aspx-404   .aspx-500
--------------------------------------------------
Auto             IIS         asp.net    asp.net
PassThrough      -           asp.net    asp.net
Replace          IIS         IIS        IIS

Asp.net相关问答推荐

更新剃须刀页面中图表的值

缓存httpmessage内容

在 Windows Server 2008 IIS7 上的 ASP.NET 中写入事件日志(log)

如何以编程方式设置单元格 colored颜色 epplus?

格式化 DataBinder.Eval 数据

asp.net:与其中的用户控件相比,控件/页面的页面生命周期顺序是什么?

有没有办法将 onclick 事件添加到 ASP.NET 标签服务器控件?

解析 JSON 响应的最简单方法

如何从 RouteData 获取路由名称?

Response.Redirect 使用 ~ 路径

GridView 与嵌套类的属性绑定

IIS 中的 existingResponse="PassThrough" 是什么意思?

尽管安装了 AspNetCoreModule,但在 IIS 中运行 ASP.NET Core 应用程序时出现 0x8007000d 错误 500.19

这个rendersection的代码是什么意思?

HttpContext.Current 在 MVC 4 项目中未解决

使用 VirtualPathProvider 从 DLL 加载 ASP.NET MVC 视图

当用户在文本框中按 Enter 键时执行按钮单击事件

在 ASPNET 标识 2.0 中禁用用户

如何将代码中的变量调用到aspx页面

ASP.NET 邮箱验证器正则表达式