访问IIS元数据库失败的解决方法

做报表,在Xp3下装IIS6.0,浏览不能正常工作,报错信息如下:

访问 IIS 元数据库失败。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Web.Hosting.HostingEnvironmentException: 访问 IIS 元数据库失败。

用于运行 ASP.NET 的进程帐户必须具有对 IIS 元数据库(如 IIS://servername/W3SVC)的读访问权。有关如何修改元数据库权限的信息,请参见 http://support.microsoft.com/?kbid=267904

源错误:

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。
堆栈跟踪: 
[HostingEnvironmentException: 访问 IIS 元数据库失败。]
   System.Web.Configuration.MetabaseServerConfig.MapPathCaching(String siteID, VirtualPath path) +690    System.Web.Configuration.MetabaseServerConfig.System.Web.Configuration.IConfigMapPath.MapPath(String siteID, VirtualPath vpath) +9
   System.Web.Hosting.HostingEnvironment.MapPathActual(VirtualPath virtualPath, Boolean permitNull) +174
   System.Web.CachedPathData.GetConfigPathData(String configPath) +398
   System.Web.CachedPathData.GetConfigPathData(String configPath) +263
   System.Web.CachedPathData.GetVirtualPathData(VirtualPath virtualPath, Boolean permitPathsOutsideApp) +166
   System.Web.Configuration.RuntimeConfig.GetLKGRuntimeConfig(VirtualPath path) +187
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42


网上搜索的结果:

运行->输入  " C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i "

原因是安装IIS和.NET Framework的顺序不对,需要重新注册.NET Framework。但是,无果。报错依旧。

其实,关键在这"用于运行 ASP.NET 的进程帐户必须具有对 IIS 元数据库(如IIS://servername/W3SVC)的读访问权"

OK。运行->cmd  输入 "cd  C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727 ",执行命令

aspnet_regiis -ga aspnet

出现以下提示:

开始为 aspnet 授予权限,使其可以访问 IIS 元数据库和 ASP.NET 使用的其他目录
aspnet 已具有相应权限,可以访问 IIS 元数据库和 ASP.NET 使用的其他目录。

OK!

你可能感兴趣的:(访问IIS元数据库失败的解决方法)