2010-06-15 54 views
0

我有一个DNN网站(05.02.03)在测试和即将发布到生产环境中,我想禁止错误消息的详细信息(即空引用异常等)给普通用户(管理员仍然可以看到详细信息)。调试在web.config中关闭。如何向一般DNN用户压制错误消息详细信息

通过抑制,我的意思是我想向普通用户(所有用户)显示的唯一错误消息就像“发生了异常”一样。我不希望将该异常的细节显示给一般用户。我仍然希望它在事件查看器中更详细地记录。

我该怎么做呢?

更新:我有“使用自定义错误消息”选中。其中显示如下错误消息:

发生严重错误。[vbCrLf]未将对象引用设置为对象的实例。

我只想要“出现严重错误。”“错误消息要显示给一般用户。

我不希望“对象referece不设置到对象的实例。”显示给一般用户

回答

0

你应该有“使用自定义错误消息”,在主机设置检查。

如果选中UseCustomErrorMessages,则ProcessModuleLoadException的行为几乎与您指定的相同。它会将消息记录到EventLog,并且会显示友好的错误消息,而不会有例外情况。消息标题文本位于SharedResources.resx中。

但是,DNN自定义错误消息使用objUserInfo.IsSuperUser来检查用户是否是主机帐户。管理员角色中的用户将表现得像普通用户一样。

有一点需要注意:我从DNN 4.9.5源码中检查了这些,你应该仔细检查你的。

+0

我有“使用自定义错误消息”选中。其中显示错误消息,如“发生严重错误./r/n对象引用未设置为对象的实例。”我只想要“发生严重错误”。我不希望“对象引用未设置为对象的实例”。以向一般用户显示。 – thames 2010-06-16 18:45:25