DNN9站点启用“Use Email Address as Username”后无法以host超级用户身份登录的解决方法咨询
解决DNN9站点无法用host登录的问题(禁用“Use Email Address as Username”设置)
别担心,既然你有服务器访问权限,咱们不用登录站点就能直接搞定这个问题。下面给你两种可靠的操作方法,选你顺手的来就行:
方法一:直接修改数据库(最直接有效)
DNN的站点核心设置都存在数据库里,咱们直接定位到对应项修改即可:
- 打开你的SQL Server管理工具(比如SSMS),连接到出问题站点所在的数据库
- 先找到目标站点的
PortalID:执行以下查询语句
从结果里找到出问题站点对应的SELECT PortalID, PortalName FROM PortalsPortalID(比如是1、2这类数字) - 接着修改“使用邮箱作为用户名”的设置:把下面的
[你的PortalID]替换成刚才查到的ID,执行更新语句UPDATE PortalSettings SET SettingValue = 'N' WHERE PortalID = [你的PortalID] AND SettingName = 'UseEmailAsUsername' - 最后回收站点对应的IIS应用池,让新设置立即生效
方法二:通过DNN命令行工具(可选)
如果你习惯用命令行操作,也可以用DNN官方的dnncli工具来修改:
- 下载并解压DNN命令行工具到站点根目录
- 打开命令提示符,切换到工具所在目录,执行命令(替换
[PortalID]为目标站点的ID)dnncli.exe settings set -p [PortalID] -n UseEmailAsUsername -v N - 同样需要回收应用池,确保设置生效
额外提醒
- 操作数据库前,建议先备份
PortalSettings表,以防万一操作失误 - 恢复设置后,你就能用
host账户正常登录该站点了。之后如果要重新启用“使用邮箱作为用户名”,记得先给host账户绑定一个有效的邮箱地址,避免再次出现登录问题
内容的提问来源于stack exchange,提问作者Bruce K T




