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