我有一个DNN网站(05.02.03)正在测试并即将发布到生产中我想向一般用户压缩错误消息的细节(即Null Reference Exception和其他)(管理员仍然可以看到详细信息)。在web.config中关闭了调试。
通过抑制,我的意思是我想向普通用户(所有用户)显示的唯一错误消息是“发生异常”。我不希望将该异常的详细信息显示给普通用户。我仍然希望它在事件查看器中更详细地记录。
我将如何做到这一点?
更新:我已选中“使用自定义错误消息”。其中显示的错误消息如下:
发生严重错误。[vbCrLf]对象引用未设置为对象的实例。
我只想向一般用户显示“发生严重错误。”错误消息。
我不希望将“对象引用未设置为对象的实例。”显示给普通用户
答案 0 :(得分:0)
您应该在主机设置中选中“使用自定义错误消息”。
如果选中UseCustomErrorMessages,ProcessModuleLoadException
的行为几乎与您指定的一样。它会将消息记录到EventLog,并显示友好的错误消息,无异常详细信息。邮件头文本可在SharedResources.resx中找到。
但是,DNN自定义错误消息使用objUserInfo.IsSuperUser
来检查用户是否是主持人帐户。具有Administrators角色的用户将表现得像普通用户一样。
有一点需要注意:我从DNN 4.9.5来源检查了这些,你应该仔细检查一下。