4

每隔一段时间,当我调试时,我会在 ASP.NET 错误页面上以漂亮的棕色文本收到此消息:

拒绝访问路径“c:\windows\microsoft.net\framework\(version)\Temporary ASP.NET Files\(blah)”。

我一直无法弄清楚是什么原因造成的,是什么真正解决了它,以及它为什么会发生。

“临时 ASP.NET 文件”部分(“(blah)”)之后的路径通常不存在,所以我不确定它为什么会出现在那里。

有时 IISRESET 会修复它,有时则不会。

有时 aspnet_regiis 会修复它,有时则不会。

有时重启会修复它,有时它不会。

值得一提的是,我今天用一些 .NET 1.1 代码遇到了这个问题(是的,仍在维护一些 - 希望尽快升级它),我不确定我是否见过 .NET 2.0 及更高版本的代码。

有谁知道是什么原因造成的,应该怎么解决?我认为它有多种可能的原因,但我只是好奇是否有人可以对此有所了解。

4

6 回答 6

4

据我了解,这可能是由机器上运行的防病毒软件和间歇性锁定文件引起的。

于 2008-10-09T22:49:00.650 回答
1

如果为临时目录打开了 Windows 索引服务,则可能会发生这种情况。有关详细信息,请参阅本文。运行文件监视器(可在sysinternals.com获得)并在临时目录上放置一个过滤器。当您收到访问错误时,请查看导致问题的应用程序。很可能是病毒扫描 - 从扫描中排除此目录,看看问题是否已解决。

于 2008-10-10T21:48:56.517 回答
1

默认情况下,ASP.NET 应用程序在 ASPNET 帐户 (IIS 5) 或 NETWORK_SERVICE 帐户 (IIS 6/7) 下运行。如果您为该站点启用了匿名,他们还会使用 IUSR_MACHINENAME 帐户。授予这些帐户对您遇到访问问题的临时目录的完全权限。

于 2008-11-27T22:00:47.797 回答
0

当 IIS 用户没有访问 \Temporary ASP.NET Files 目录的权限时,也会发生这种情况

于 2008-10-10T02:02:01.837 回答
0

将用户“everyone”添加到 Temporary ASP.NET Files 文件夹的权限

于 2008-11-27T21:41:23.187 回答
0

我通过IIS_IUSRSC:\Windows\Temp运行进程监视器和过滤Result is ACCESS DENIED.

csc.exe试图在其中创建一个文件,C:\Windows\Temp但没有这样做的权限。

于 2016-10-31T18:02:11.790 回答