如何停止源文件信息出现在版本中?

问题描述 投票:0回答:2

我正在构建一个网络应用程序。 这就是我所做的。

将解决方案配置管理器设置为发布。 因此,所有项目都在构建发布版本。 然后我清理解决方案并构建所有内容。 然后我“构建部署包”。

当从部署包运行已安装的代码时,我注意到当编译的源代码中有错误时,源文件就会出现! 这怎么可能,我正在构建发布配置。 源代码肯定不在发行版中,所以它必须在 dll 中。

有办法阻止这种情况吗?

asp.net
2个回答
2
投票

假设您正在谈论“黄屏死机”ASP.NET 错误页面,显示异常的源代码位置;这是由于在构建和部署包中包含调试符号而发生的。这是与您的

*.pdb
文件同名的
*.dll
文件。

这本身并不坏。但是,无论如何,您都不应该向最终用户显示这些错误。即使没有调试符号,这些错误消息也会显示太多信息。您应该处理错误并向用户显示“安全且友好”的错误消息。

如果要删除调试符号,可以删除 PDB 文件。您还可以更改项目中的构建属性,并删除包含调试符号的选项。


1
投票

除了安德鲁的回答之外,您还应该检查您的 web.config 是否已禁用调试:

<compilation debug="false"/>

这应该可以防止源代码显示在“黄屏死机”中。

© www.soinside.com 2019 - 2024. All rights reserved.