某些 IIS7/7.5500.19
配置错误仅在本地服务器上运行的浏览器上呈现。
无论我在站点文件的部分<httpErrors errorMode="Detailed" existingResponse="PassThrough" />
中设置(或者甚至是全局设置),似乎都会发生这种情况。system.webServer
web.config
例如,有一位开发人员报告说他刚刚收到通用的 IIS7 500 错误页面:
尽管他已在他的系统中进行了以下配置,但这种情况仍然发生web.config
:
<configuration>
<system.webServer>
<httpErrors errorMode="Detailed" existingResponse="PassThrough" />
</system.webServer>
</configuration>
如果我在服务器上浏览该网站,我会看到(一些敏感信息被删除):
原因是否是如果web.config
出现错误,则无法解析。由于无法解析,本地<httpErrors>
设置无法读取,从而导致 IIS 恢复为默认设置(即 DetailedLocalOnly)?
更新:
@LazyOne- 建议在服务器级别设置上述配置,我已经尝试过了。这只导致原始 500 错误:
答案1
经过进一步的研究,我终于弄清楚了如何500.19
在网站web.config
遭受破坏的情况下让错误远程出现。
诀窍是设置(全局)errorMode="Detailed"
和existingResponse="Replace"
。
这个existingResponse="Replace"
设置有点违反直觉,但确实有道理。