【发布时间】:2010-05-24 19:10:04
【问题描述】:
基本思想是我们有一个模拟生产环境的测试环境,因此 customErrors="RemoteOnly"。我们刚刚构建了一个针对测试环境运行并检测中断的测试工具。我们希望它能够撤回详细的错误。但我们不想打开 customErrors="On",因为那样它就不会模仿生产。
我环顾四周,想了很多,但我想出的一切都是不可能的。我对这些观点有误吗?
- 我们无法在运行时打开 customErrors,因为当您调用 configuration.Save() 时 - 它会将 web.config 写入磁盘,现在每个请求都关闭。
- 我们无法使用自己的 web.config 将文件符号链接到新的顶级目录,因为我们在 windows 上,而 windows 上的 subversion 不做符号链接。
- 我们不能使用 URL-Mapping 创建一个空文件夹 dir2 和它自己的 web.config 并让 dir1 中的文件看起来在 dir2 - web.config 不适用
- 我们无法使用自己的 web.config 将所有 aspx 文件复制到 dir2 中,因为没有一个链接是一致的,这是一个可怕的 hacky 解决方案。
- 我们无法根据主机名更改 web.config 中的 customErrors(例如,向测试服务器添加另一个 dns 条目),因为这是不可能的/不支持的
- 我们不能做任何虚拟目录的恶作剧来让它发挥作用。
如果我不是,有没有办法完成我想做的事情?在某些情况下(dns 名称甚至查询字符串值)打开 customErrors 站点范围?
【问题讨论】:
标签: asp.net iis web-config custom-errors