DNN 服务器 - System.Runtime.InteropServices.COMException:数据无效
DNN Server - System.Runtime.InteropServices.COMException: The data is invalid
我们的一个生产服务器 运行 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
机器是运行WindowsServer 2012/IIS8.5/ASP.NET4.5.
我搜索了错误并看到 web.config 可能格式不正确 XML 的建议,所以我检查了一下,没问题,并且一年多没有改变。
我还看到了安装 IIS URL 重写模块的建议。我试过了,但仍然没有成功,而且该网站已经运行多年但没有安装它。
完整的 web.config(减去连接字符串)在这里:pastebin。com/GpqB5H0U。
这是事件查看器中的错误:
或作为文本:pastebin。com/paUvF0he
由于问题似乎是由重启引起的,所以我将服务器恢复到一周前的备份,并且运行良好,直到下次重启时,错误再次出现。我检查了一下,没有任何 windows 会影响它的组策略更新或更改。
如有任何想法,我们将不胜感激。
所以我终于修复了它,我会 post 解决方案,如果它能帮助其他人,虽然我怀疑它是我们设置的独特之处。
引导我查看 webresource.axd,因为它在 EnsureHandlerExistenceChecked() 方法的评论中,我发现不知何故,一个名为 webresource.axd 的文件夹有自己的 web.config 文件已在网站的根文件夹中创建。它没有任何我能看到的用途,所以我删除了文件夹及其内容,突然一切都开始工作了。
感谢所有回复的人。 @dai 你想 post 你的评论作为答案,这样我就可以给你找到解决方案的荣誉吗?
我们的一个生产服务器 运行 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
机器是运行WindowsServer 2012/IIS8.5/ASP.NET4.5.
我搜索了错误并看到 web.config 可能格式不正确 XML 的建议,所以我检查了一下,没问题,并且一年多没有改变。
我还看到了安装 IIS URL 重写模块的建议。我试过了,但仍然没有成功,而且该网站已经运行多年但没有安装它。
完整的 web.config(减去连接字符串)在这里:pastebin。com/GpqB5H0U。
这是事件查看器中的错误:
或作为文本:pastebin。com/paUvF0he
由于问题似乎是由重启引起的,所以我将服务器恢复到一周前的备份,并且运行良好,直到下次重启时,错误再次出现。我检查了一下,没有任何 windows 会影响它的组策略更新或更改。
如有任何想法,我们将不胜感激。
所以我终于修复了它,我会 post 解决方案,如果它能帮助其他人,虽然我怀疑它是我们设置的独特之处。
感谢所有回复的人。 @dai 你想 post 你的评论作为答案,这样我就可以给你找到解决方案的荣誉吗?