ASP.NET 因为无法创建应用程序域,因此未能执行请求。错误号:0x80070002

本文详细介绍了Windows Server 2003部署的ASP.NET程序在更新补丁后出现无法创建应用程序域导致无法运行的问题,并提供了通过重新注册IIS、检查.NET Framework 2.0权限、确保虚拟目录访问权限等解决方案,最终发现是KB2604092补丁引起问题,卸载后恢复正常。

有一台服务器windows server 2003,部署了一个asp.net 程序,一直运行正常,打过一堆补丁之后,突然就运行不起来了,通过事件查看器发现错误:因为无法创建应用程序域,因此未能执行请求。错误号:0x80070002。

网上查询解决方案:

    1. 重新注册IIS, NET/Framework/v2.0.50727里的aspnet_regiis.exe 运行它,重新注册一下

        先卸载:.net aspnet_regiis.exe -u

        重新安装:aspnet_regiis.exe -i

    2. 安装2.0之后,查看IIS的虚拟目录的属性设置中的ASP.NET标签是否为2.0。

    3. 权限问题:

        (1). 检查应用程序池的属性,查看它是以什么用户身份运行的,一般是NETWORK   SERVICE

        (2). 确保这个用户对.NET   Framework   2.0的目录有访问权限:systemroot:/Windows/Microsoft.NET/Frameworks/2.0.xxxx

        (3). 确保该用户对虚拟目录具有访问权限。

尝试过之后问题依旧,后来发现有人说是KB2604092这个补丁引起的,卸载之后重启服务器,恢复正常。
未能加载文件或程序集“System.Collections.Concurrent”或它的某一个依赖项。未能验证强名称签名。此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045) 说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.IO.FileLoadException: 未能加载文件或程序集“System.Collections.Concurrent”或它的某一个依赖项。未能验证强名称签名。此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045) 源错误: 执行当前 Web 请求期间生成了未经处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 程序集加载跟踪: 下列信息有助于确定程序集“System.Collections.Concurrent”未能加载的原因。 === 预绑定状态信息 === 日志: DisplayName = System.Collections.Concurrent (Partial) 警告: 为程序集提供了部分绑定信息: 警告: 程序集名称: System.Collections.Concurrent | 域 ID: 2 警告: 当仅提供程序集显示名称的一部分时,将发生部分绑定。 警告: 这可能导致联编程序加载错误的程序集。 警告: 建议为程序集提供完全指定的文字标识, 警告: 并由简单名称、版本、区域性和公钥标记组成。 警告: 有关此问题的详细信息和常见解决方案,请参见白皮书 http://go.microsoft.com/fwlink/?LinkId=109270。 日志: Appbase = file:///D:/CQHT_wms/WMS/WebRoot/ 日志: 初始 PrivatePath = D:\CQHT_wms\WMS\WebRoot\bin 调用程序集: (Unknown)。 === 日志: 此绑定从 default 加载上下文开始。 日志: 正在使用应用程序配置文件: D:\CQHT_wms\WMS\WebRoot\web.config 日志: 使用主机配置文件: C:\Users\14344\Documents\IISExpress\config\aspnet.config 日志: 使用 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config 的计算机配置文件。 日志: 此时没有为引用应用策略(私有、自定义、分部或基于位置的程序集绑定)。 日志: 尝试下载新的 URL file:///C:/Users/14344/AppData/Local/Temp/Temporary ASP.NET Files/vs/3b881846/371edcf9/System.Collections.Concurrent.DLL。 日志: 尝试下载新的 URL file:///C:/Users/14344/AppData/Local/Temp/Temporary ASP.NET Files/vs/3b881846/371edcf9/System.Collections.Concurrent/System.Collections.Concurrent.DLL。 日志: 尝试下载新的 URL file:///D:/CQHT_wms/WMS/WebRoot/bin/System.Collections.Concurrent.DLL。 日志: 正在使用应用程序配置文件: D:\CQHT_wms\WMS\WebRoot\web.config 日志: 使用主机配置文件: C:\Users\14344\Documents\IISExpress\config\aspnet.config 日志: 使用 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config 的计算机配置文件。 日志: 策略后引用: System.Collections.Concurrent, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 错误: 未能完成程序集的安装(hr = 0x80131045)。探测终止。 堆栈跟踪: [FileLoadException: 未能加载文件或程序集“System.Collections.Concurrent”或它的某一个依赖项。未能验证强名称签名。此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045)] [FileLoadException: 未能加载文件或程序集“System.Collections.Concurrent, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。未能验证强名称签名。此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045)] System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +0 System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +232 System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection) +113 System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +23 System.Reflection.Assembly.Load(String assemblyString) +35 System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +48 [ConfigurationErrorsException: 未能加载文件或程序集“System.Collections.Concurrent, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。未能验证强名称签名。此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045)] System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +767 System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +256 System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +58 System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +287 System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() +69 System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded) +137 System.Web.Compilation.BuildManager.ExecutePreAppStart() +172 System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +854 [HttpException (0x80004005): 未能加载文件或程序集“System.Collections.Concurrent, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。未能验证强名称签名。此程序集可能已被篡改,或者已被延迟签名,但没有用正确的私钥进行完全签名。 (异常来自 HRESULT:0x80131045)] System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +532 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +111 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +719 版本信息: Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.8.9316.0用的是Web
最新发布
10-24
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值