3

在开发时,我理解为什么要构建 PDB 文件。但是当我为生产服务器部署我的网站时,PDB 文件仍然存在。我不明白为什么。

我应该在生产环境中删除它们还是保留它们

4

3 回答 3

8

PDB 文件允许在应用程序引发未处理异常时记录代码的堆栈跟踪。

如果您的网站CustomErrors在 web.config 中设置为,OFF那么每个人都可以看到您的错误代码。这是不好的。

如果您的网站CustomErrors在 web.config 中设置为,ON或者RemoteOnly您的错误代码将不会对公众可见,但是您将能够在服务器事件日志中找到 StackTrace,这可能有助于您跟踪代码中的错误. 还行吧。

如果您删除 PDB(或通过项目构建/发布配置停止发布),那么您的站点将不会在 Stack Trace 中记录您的代码,但会记录其他堆栈信息。在任何情况下,始终CustomErrors在 web.config 中设置为ONRemoteOnly。总是这样做。

于 2012-11-01T11:50:23.730 回答
1

您可以安全地删除它们。它们用于调试和代码源目的。

如果您不希望部署 pdb 文件,请在项目设置中(右键单击项目并选择Properties > Build):

您可以选择Configuration:用于部署的(例如Release),然后在该Output部分中,按Advanced..- 按钮打开高级构建设置并设置Debug Info:none(通常pdb-only处于发布模式)。

然后,每次您在发布模式下部署时,都不会生成 pdb 文件。

于 2012-11-01T11:44:34.817 回答
0

PDB 文件用于调试,但您可以将它们留在生产服务器上。不会有不好的事情发生

于 2012-11-01T11:44:08.010 回答