我注意到IIS错误页面中的行为异常。我有这个设置:
<httpErrors errorMode="Custom" existingResponse="Replace">
<remove statusCode="500" />
<error statusCode="500" responseMode="ExecuteURL" path="/error-page" />
</httpErrors>
有时,由于查询字符串太长而导致ASP.NET错误发生时,在尝试执行错误页面URL时立即发生第二个错误。我已经将问题跟踪到IIS将原始URL附加到错误页面URL的事实:
Original: http://example.com/someurl?id=some_very_long_query_string_causing_security_exception
Error: /error-page?500;http://example.com/someurl?id=some_very_long_query_string_causing_security_exception
这是一个巨大的问题。如果原始网址由于查询字符串过长而失败,则带有附加内容的错误页面也会失败,因为它的查询字符串甚至更长!
我相信这是IIS中最愚蠢的错误。有谁知道是否有一些补丁包?最糟糕的情况是,如果现在没有任何解决办法,是否有办法禁用此行为或任何技巧来阻止IIS将未经请求的内容附加到错误页面?因为它破坏了整个自定义错误页面机制。
主席先生,我面临同样的问题。解决了吗
—
丹尼斯