ASP.NET错误显示我的本地开发文件夹?

时间:2014-07-01 09:19:51

标签: c# asp.net

我有一个继承的asp.net项目。我从来没有在其他项目中遇到过这个问题,所以这对我来说完全是新的。

在我的web.config中,我把错误放在 customErrors mode =“Off”中,并且屏幕上会显示应用程序中的任何错误。

问题是,当网站在其他服务器上发布时,显示我的开发本地目录文件夹的错误...

Exameple:

ASP.NET Error
The connection of the server it's Close.
Error in C:\Develop\myProject\file.cs\MethodName() <- ?¿

有人知道发生了什么事吗?

由于

2 个答案:

答案 0 :(得分:7)

从编译期间生成的符号信息中获取出现错误时显示的堆栈跟踪信息。它存储在pdb文件中。符号信息是指编译期间文件的位置。部署后,源.cs文件甚至不存在于目标系统上,它只显示pdb中的内容。

这是完全正常的行为,无需担心。

正如其他人所说,您不应该在生产服务器上关闭客户端,因为堆栈跟踪可能会泄露敏感信息。

答案 1 :(得分:2)

通过设置customErrors模式=&#34;关闭&#34;将暴露抛出的所有异常并暴露抛出的错误YSOD(黄色死亡屏幕)

如果要隐藏这些选项,请将选项设置为&#34; On&#34;然后这将只显示您的自定义错误消息/页面。如果您仍然需要查看这些错误,请将其设置为RemoteOnly,这将在本地计算机上显示部署该站点的YSOD,但会向其他所有人显示自定义错误。

至于显示您的开发文件夹,这是因为它只是使用编译dll的信息。