拒绝访问错误进行代码修改与索引服务运行时

症状

<script type="text/javascript">loadTOCNode(1, 'symptoms');</script>
当您访问页之后 AppDomain 负载, 会例如, Bin 目录或在运行 Microsoft 索引服务, Web.config 文件修改时您可能收到以下错误信息:

服务器错误 ' 应用程序 / MyWebApp '

<script type="text/javascript">loadTOCNode(2, 'symptoms');</script>
配置错误
<script type="text/javascript">loadTOCNode(3, 'symptoms');</script> 说明 : 的配置文件需要处理此请求处理期间出错。 请检查特定错误详细信息并适当修改配置文件。

分析器错误信息 : 访问被拒绝 ' mydll ':。

源错误

Line 169:   <add assembly=<System.Drawing, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a>/>
 
Line 170:    <add assembly=<System.EnterpriseServices, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a>/>
Line 171:    <add assembly=<*>/>
Line 172:    </assemblies>
Line 173:    
					
源代码文件 : c:/winnt/microsoft.net/framework/v1.0.3705/Config/machine.config 线条 : 171
Microsoft.NETFramework Version:1.0.3705.0 ; ASP.NET version:1.0.3705.0 版本信息
如果右键单击在浏览器, 该页, 然后单击 查看源文件 , 看到 HTML 源代码, 揭示信息, 包括以下调用堆栈。
[FileLoadException]: Access is denied: 'MyWebApp'.<BR/>
   at System.Reflection.Assembly.nLoad(AssemblyName fileName, Boolean isStringized, Evidence assemblySecurity, Boolean throwOnFileNotFound, Assembly locationHint, StackCrawlMark&amp; stackMark)<BR/>
   at System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Boolean stringized, Evidence assemblySecurity, StackCrawlMark&amp; stackMark)<BR/>
   at System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark&amp; stackMark)<BR/>
   at System.Reflection.Assembly.Load(String assemblyString)<BR/>
   at System.Web.UI.CompilationConfiguration.LoadAssemblies(Hashtable original)<BR/>
[ConfigurationException]: Access is denied: 'MyWebApp'.<BR/>
(d:/winxp/microsoft.net/framework/v1.0.3215/Config/machine.config line 145)<BR/>
   at System.Web.UI.CompilationConfiguration.LoadAssemblies(Hashtable original)<BR/>
   at System.Web.UI.CompilationConfiguration.get_Assemblies()<BR/>
   at System.Web.UI.CompilationConfiguration.GetAssembliesFromContext(HttpContext context)<BR/>
   at System.Web.UI.TemplateParser.AppendConfigAssemblies()<BR/>
   at System.Web.UI.TemplateParser.PrepareParse()<BR/>
   at System.Web.UI.TemplateParser.Parse()<BR/>
   at System.Web.UI.TemplateParser.GetParserCacheItemThroughCompilation()<BR/>
   at System.Web.UI.TemplateParser.GetParserCacheItemInternal(Boolean fCreateIfNotFound)<BR/>
   at System.Web.UI.TemplateParser.GetParserCacheItemWithNewConfigPath()<BR/>
   at System.Web.UI.TemplateParser.GetParserCacheItem()<BR/>
   at System.Web.UI.ApplicationFileParser.GetCompiledApplicationType(String inputFile, HttpContext context, ApplicationFileParser&amp; parser)<BR/>
   at System.Web.HttpApplicationFactory.CompileApplication(HttpContext context)<BR/>
   at System.Web.HttpApplicationFactory.Init(HttpContext context)<BR/>
   at System.Web.HttpApplicationFactory.GetApplicationInstance(HttpContext context)<BR/>
   at System.Web.HttpRuntime.ProcessRequestInternal(HttpWorkerRequest wr)
					

原因

<script type="text/javascript">loadTOCNode(1, 'cause');</script>
请求 Microsoft ASP.NET 页时如果运行索引服务器 (Cisvc.exe), 然后 IndexServer 可能扫描 TemporaryASP.NETFiles 目录。 TemporaryASP.NETFiles 目录上 Cisvc.exe 然后控制锁的一至五分钟。 的锁的时间长度取决于导致 Aspnet_wp.exeprocess 目录的大小将不加载特定 DLL (或 W3wp.exe 进程为 MicrosoftInternet 信息服务 [ IIS ] 6.0 上运行应用程序)。

解决方案

<script type="text/javascript">loadTOCNode(1, 'resolution');</script>
如果您不使用 IndexServer, 服务器上禁用它。 要这样做, 请按照下列步骤操作:
1.单击 开始 , 然后单击 服务 。
2.服务, 的列表中找到 索引服务 , 然后单击从体 索引服务属性 。
3.在 常规 选项卡的 索引服务属性 对话框中, 在 启动类型 下拉项列表, 单击 禁用 。
4.单击 确定 。

如果使用 IndexServer, 可以从文件夹, IndexServer 扫描中排除临时 ASP.NET 文件目录。 要这样做, 请按照下列步骤操作:
1.单击 开始 指向 所有程序 , 指向 管理工具 , 然后单击 计算机管理 。
2.展开 服务和应用程序 节点, 展开 索引服务 节点, 然后展开 系统 节点。
3.右键单击 目录 文件夹, 指向 新建 , 并从体, 打开 添加目录 对话框单击 目录 。
4.单击 浏览 , 然后找到 TemporaryASP.NETFiles 目录。 通常您以下路径中找到临时 ASP.NET 文件 c:/ < WINDIR > /Microsoft.NET/Framework/ < 版本号 > /Temporary ASP.NET 文件:
注意 < > 版本号 是计算机上安装 .NETFramework 的版本。
5.单击 无 下包括索引中 ? 选项按钮。
6.单击 确定 以关闭。
7.关闭 计算机管理 对话框。
8.重新启动索引服务服务。

更多信息

<script type="text/javascript">loadTOCNode(1, 'moreinformation');</script>
其他软件专门用来定期扫描目录可能锁定文件, 它们位于方式是类似方式索引服务锁定文件中 TemporaryASP.NETFiles 目录中。 属于此类软件包括病毒扫描仪和备份软件。 Microsoft 建议您看到对个别软件有关如何从这些服务排除 TemporaryASP.NETFiles 到禁用或制造商的手册。

这篇文章中的信息适用于:
Microsoft ASP.NET 1.1
Microsoft ASP.NET 1.0
Microsoft Windows Indexing Service 2.0
关键字: 
kbhttpruntime kbwebforms kbprb kbconfig KB329065 KbMtzh kbmt
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值