【问题标题】:DNN Server - System.Runtime.InteropServices.COMException: The data is invalidDNN 服务器 - System.Runtime.InteropServices.COMException:数据无效
【发布时间】:2020-12-03 23:38:54
【问题描述】:

我们的一台运行 DNN (DotNetNuke) 的生产服务器最近在重新启动后停止工作。现在所有请求都给出以下错误:

[COMException (0x8007000d): The data is invalid. (Exception from HRESULT: 0x8007000D)]
   System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo) +0
   System.Web.Handlers.AssemblyResourceLoader.EnsureHandlerExistenceChecked() +340
   System.Web.Handlers.AssemblyResourceLoader.IsValidWebResourceRequest(HttpContext context) +15
   System.Web.Security.FormsAuthenticationModule.OnEnter(Object source, EventArgs eventArgs) +300

   System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +139
   System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +195
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +88

机器运行的是 Windows Server 2012/IIS8.5/ASP.NET 4.5。

我已搜索错误并看到 web.config 可能存在格式错误的 XML 的建议,所以我检查了一下,它很好,并且一年多没有改变。

我还看到了我们安装 IIS URL 重写模块的建议。我试过了,但仍然没有运气,而且该网站已经运行多年而没有安装它。

完整的 web.config(减去连接字符串)在这里:pastebin.com/GpqB5H0U。

这是事件查看器中的错误:

或作为文本:pastebin.com/paUvF0he

由于问题似乎是由重新启动引发的,我将服务器恢复为一周前的备份,它运行良好,直到下次重新启动,错误再次出现。我检查了一下,没有任何 Windows 更新或组策略更改会影响它。

任何想法都将不胜感激。

【问题讨论】:

  • 你能显示完整的 web.config 和模块已安装在 IIS 上吗?最好显示登录事件查看器,以便我找到问题。重启服务器后,DNN 是否正常启动?
  • 完整的 web.config(减去连接字符串)在这里:pastebin.com/GpqB5H0U
  • 这是事件查看器中的错误:pastebin.com/paUvF0he
  • 堆栈跟踪表明FormsAuthenticationModule 正在抱怨。你是如何在你的项目中配置的?我猜测 .NET Framework 的系统范围的 Windows 更新打破了 DNN 中的假设(无论如何,DNN 是古老的)。
  • 我认为您应该在继续任何其他调查之前更新到 .NET Framework 4.8 - 我愿意赌一两美元,该问题与 Microsoft 发布的 SameSite cookie 补丁有关今年改用 .NET Framework。

标签: c# asp.net iis dotnetnuke


【解决方案1】:

所以我终于修复了它,我会在此处发布解决方案,以防它对其他人有所帮助,尽管我怀疑这是我们设置的独特之处。

@dai's comments 引导我查看 webresource.axd,因为它位于 EnsureHandlerExistenceChecked() 方法的注释中,我发现不知何故,在网站的根文件夹。它没有起到任何我能看到的作用,所以我删除了文件夹及其内容,突然一切都开始工作了。

感谢所有回复的人。 @dai 你想发布你的 cmets 作为答案,以便我可以给你找到解决方案的功劳吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-24
    • 1970-01-01
    • 2016-05-04
    • 1970-01-01
    • 2021-10-14
    • 2022-07-28
    • 2018-02-13
    相关资源
    最近更新 更多