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

摘要:
用于运行ASP.NET进程的帐户必须具有对IIS元数据库的读取权限。有关如何修改元数据库权限的信息,请参阅http://support.microsoft.com/?他们做到了,但问题没有解决。注意:如果您正在使用ASP。Net2.0,您必须授予Windows用户帐户元数据库权限,请不要使用MetaAcl工具。而是运行ASP。NET IIS注册工具命令和-ga选项。再次访问服务,错误消失。

系统是windows xp sp3,vs2010。安装了iis 5.1 ,创建了虚拟目录之后copy进去一个web sercices测试下能不能正常工作。

出现如下问题:

访问 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

 

百度了下,多数解决方法是

1、打开CMD,进入 C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727

2、输入 aspnet_regiis.exe -i

理由是先安装了vs后安装iis的情况下需要重新注册.net framework ,符合情况。

照做,但是问题没解决。

发现了这句话:

注意:如果您正在使用 ASP.Net 2.0 且您必须授予 Windows 用户帐户元数据库权限,请不要使用 MetaAcl 工具。而是运行带 -ga 选项的 ASP.NET IIS 注册工具命令。例如,以下命令将向 Windows 用户帐户授予对 IIS 元数据库的 <WindowsUserAccount> 权限:

aspnet_regiis -ga <WindowsUserAccount>
看到希望了,方法明确指向错误提示中的“用于运行 ASP.NET 的进程帐户必须具有对 IIS 元数据库(如 IIS://servername/W3SVC)的读访问权”这句话, 进入 C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727  将<WindowsUserAccount>  替换为aspnet,即执行aspnet_regiis -ga aspnet命令,成功。
再次访问服务,错误消失。

免责声明:文章转载自《访问 IIS 元数据库失败 的解决方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇从HTML文件中提取正文的简单方案Java实现bt文件下载、制作、解析、磁力链接下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql8.0只能本地连接解决方法

最近,在安装好新版本的mysql后,使用java程序连接出现几个问题,首先是数据库连接url的问题,新的连接url需要加上时区这个参数,例如: jdbc:mysql://127.0.0.1:3306/localmysql?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/...

如何启动iis(Internet 信息服务(IIS)管理器)

Internet 信息服务(IIS)管理器 启动 IIS 管理器1、从“开始”菜单,指向“管理工具”,然后单击“Internet 信息服务 (IIS) 管理器”。 从“运行”对话框启动 IIS 管理器2、从“开始”菜单,单击“运行”。 在“打开”框中,键入 inetmgr,然后单击“确定”。 3、还可以从“计算机管理”窗口访问 IIS。通过这种方式访问 I...

mongo部署(linux)

Linux版本:CentOS release 6.9 Mongodb版本:mongodb-linux-x86_64-3.6.1.tgz 1、解压文件 执行解压命令:tar -zxvf mongodb-linux-x86_64-3.6.1.tgz   2、创建数据,日志目录 命令:mkdir /my/mydata/mongodb       mkdir /m...

Java 之 Scanner 类

一、Scanner 类 Scanner 是一个可以解析基本类型和字符串的简单文本扫描器。 Demo: 1 Scanner sc = newScanner(System.in); 2 int i = sc.nextInt(); System.in 系统输入指的通过键盘录入数据。 二、引用类型使用步骤   1、导包 使用 import 关键字导包,在类的所有代...

C#控件重绘学习(一)

由于要做一个工控软件,传统的控件显然已经不能满足实际的要求了,所以控件的重绘迫在眉睫。由于考研耽误了很多时间,C#的学习也搁浅了很长一段时间了,所以趁这个机会,我打算把控件的重绘认真的学习透彻。 好了,控件的重绘,让我们从普通按钮开始吧! 先刨一下Button的老底: 命名空间: System.Windows.Forms程序集: System.Window...

DB2中Lob is closed. ERRORCODE=4470的解决

使用DB2的Blob类型是,出现一下错误: Lob is closed. ERRORCODE=-4470, SQLSTATE=null;?C:com.ibm.db2.jcc.b.SqlException: [jcc][10120][11936][3.50.152] 操纵无效:已封闭 Lob。 ERRORCODE=-4470, SQLSTATE=null。...