gpt4 book ai didi

asp.net - IIS 中的 existingResponse ="PassThrough"是什么意思?

转载 作者:行者123 更新时间:2023-12-03 08:56:22 30 4
gpt4 key购买 nike

文档说

existingResponse="PassThrough"

Leaves the response untouched if an existing response exists. http://www.iis.net/configreference/system.webserver/httperrors#005



但是,“现有响应存在”是什么意思?

例如。我要我的 customErrors处理程序来抑制 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>

粗略地说,这是我的理解:

直通 - 保留现有的响应,只要有一个。您的应用程序逻辑可能不返回任何内容。在这种情况下,将使用此处定义的错误页面。

汽车 - 使用此节点中定义的 IIS 错误页面,除非在 asp.net 中设置:
Response.TrySkipIisCustomErrors = true;

如果您这样做了,则使用您的代码的响应。

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

最后一个选项似乎是您想要的。

编辑:

考虑:
existingResponse="PassThrough"

现在尝试打开一个不存在的asp.net页面,你会看到:

enter image description here

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

现在,尝试打开一个不存在的 html 页面。这次我们仍然得到 404 状态,但页面为空。

更改为:
existingResponse="Auto"

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

enter image description here

所以,总结一下:当查看缺失的 html 和 aspx 页面时 existingResponse值,我们得到不同的错误页面:
                .html-404   .aspx-404   .aspx-500
--------------------------------------------------
Auto IIS asp.net asp.net
PassThrough - asp.net asp.net
Replace IIS IIS IIS

关于asp.net - IIS 中的 existingResponse ="PassThrough"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31040671/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com