【问题标题】:How to suppress error message details to general DNN Users如何向一般 DNN 用户隐藏错误消息详细信息
【发布时间】:2010-06-15 22:12:35
【问题描述】:

我有一个 DNN 站点 (05.02.03) 正在测试中并即将发布到生产环境中,我想向普通用户隐藏错误消息的详细信息(即空引用异常等)(管理员仍然可以看到详细信息)。 web.config 中的调试已关闭。

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

我该怎么做呢?

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

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

我只想向普通用户显示“发生严重错误。”错误消息。

我不希望向普通用户显示“Object reference not set to an instance of an object.

【问题讨论】:

    标签: error-handling dotnetnuke dotnetnuke-5


    【解决方案1】:

    您应该在主机设置中选中“使用自定义错误消息”。

    如果选中 UseCustomErrorMessages,ProcessModuleLoadException 的行为几乎与您指定的一样。它将消息记录到 EventLog 并显示友好的错误消息,没有异常详细信息。消息标题文本位于 SharedResources.resx。

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

    一点警告:我从 DNN 4.9.5 源中检查了这些,您应该从您的源中仔细检查。

    【讨论】:

    • 我已选中“使用自定义错误消息”。其中显示一条错误消息,例如“发生严重错误。/r/n 对象引用未设置为对象的实例。”我只想要“发生严重错误”。我不希望“对象引用未设置为对象的实例”。向普通用户展示。
    猜你喜欢
    • 2021-06-25
    • 2012-04-27
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-18
    相关资源
    最近更新 更多